teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

ソースコードの追加

2018/05/14 13:04

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -98,4 +98,60 @@
98
98
 
99
99
  Xcode Version 9.3.1
100
100
 
101
- よろしくお願い致します。
101
+ よろしくお願い致します。
102
+
103
+ ### 追記
104
+ ```
105
+ import RealmSwift
106
+
107
+ class Morning: Object {
108
+ // 管理用 ID。プライマリーキー
109
+ @objc dynamic var id = 0
110
+
111
+ // 投稿ID
112
+ @objc dynamic var postID = ""
113
+
114
+ // UserName
115
+ @objc dynamic var userName = ""
116
+
117
+ // ImageString
118
+ @objc dynamic var imageString = ""
119
+
120
+ // caption
121
+ @objc dynamic var caption = ""
122
+
123
+ // date
124
+ @objc dynamic var time = ""
125
+
126
+
127
+ override static func primaryKey() -> String? {
128
+ return "id"
129
+ }
130
+ }
131
+ ```
132
+
133
+ ```
134
+ // Date.timeIntervalSinceReferenceDateメソッドだけを取り出し、コードの量を減らす
135
+ let timer = Date.timeIntervalSinceReferenceDate
136
+
137
+ // もしもMorningSwitchがtrueだったら
138
+ if morningSwitch.isOn == true {
139
+ let morning = Morning()
140
+ morning.time = String(timer)
141
+
142
+ let morningArray = realm.objects(Morning.self)
143
+ // もしもmorningArrayのcountプロパティが0じゃなかったら
144
+ if morningArray.count != 0 {
145
+ morning.id = morningArray.max(ofProperty: "id")! + 1
146
+ }
147
+ try! realm.write {
148
+ // タグmorningに投稿情報が保存される時
149
+ morning.caption = self.textField.text!
150
+ morning.userName = (Auth.auth().currentUser?.displayName!)!
151
+ morning.imageString = imageData!.base64EncodedString(options: .lineLength64Characters)
152
+ // 日付の値を取得する
153
+ morning.time = String(timer)
154
+ realm.add(morning, update: true)
155
+ }
156
+ }
157
+ ```