回答編集履歴

1

追記

2019/07/20 14:31

投稿

MasakiHori
MasakiHori

スコア3384

test CHANGED
@@ -3,3 +3,57 @@
3
3
  primary keyには同じ値を挿入できません。
4
4
 
5
5
  1回目と同じ値を挿入しようとしているのですから、エラーが出るのが正常動作です。
6
+
7
+
8
+
9
+ ----
10
+
11
+ 追記:
12
+
13
+
14
+
15
+ ```swift
16
+
17
+ func configure(columnName: String, recordedDate: String)
18
+
19
+ ```
20
+
21
+ がおかしいので
22
+
23
+ ```swift
24
+
25
+ static func configure(columnName: String, recordedDate: String) -> String {
26
+
27
+ return columnName + "." + recordedDate
28
+
29
+ }
30
+
31
+ ```
32
+
33
+ にした上で
34
+
35
+ ```swift
36
+
37
+ tableColumn.compoundKey = TableColumn.configure(columnName: uniqueColumnName, recordedDate: recordedDate)
38
+
39
+ ```
40
+
41
+ にしてください。
42
+
43
+
44
+
45
+ また、例外を避けるために追加をする前に
46
+
47
+ ```swift
48
+
49
+ guard self.realm.objects(TableColumn.self).filter("compoundKey == %@", tableColumn.compoundKey).count == 0 else {
50
+
51
+ print("Already exist value")
52
+
53
+ return
54
+
55
+ }
56
+
57
+ ```
58
+
59
+ などでガードしてください。