私はレルムに直近で、私のプロジェクトでレルムを使用しようとしています。ここでは、JSONを解析して領域を使用して保存しようとしています。結果の配列エラーがレルムと結果の操作JSON
を発生して、私はループにしようとしているときに「書き込みトランザクションの外でオブジェクトを変更しようとする - 最初のRLMRealmインスタンス上beginwritetransactionを呼び出す」これはJSONの結果である
を:
{"data":[{"id":1,"parent_id":0,"name":"JenniferMaenle","title":"Ms","phone":"","address":"Toled, ohio","email":"[email protected]","image":"44381525_2017.jpg","relation_id":5,"created_at":null,"updated_at":"2017-08-10 02:30:05"},{"id":2, "parent_id":1,"name":"Khadeeja","title":"","phone":"","address":"","email":"","image":"Khadeeja_2017-07-17.jpg","relation_id":2,"created_at":null,"updated_at":"2017-07-17 08:3:12"}]}
JSONを解析してRealmデータベースに保存しようとしています。ここに私の試みは、次のとおりです。
class Person: Object {
dynamic var name = ""
dynamic var title = ""
dynamic var address = ""
}
override func viewDidLoad() {
super.viewDidLoad()
self.add()
}
func add(){
guard let data = dataFromFile("ServerData") else { return }
let persons = Person()
do {
if let json = try JSONSerialization.jsonObject(with: data) as? [String: AnyObject] {
if let data = json["data"] as? [[String:AnyObject]]{
for eachItem in data{
persons.name = eachItem["name"] as! String
persons.title = eachItem["title"] as! String
persons.address = eachItem["address"] as! String
try! realm.write {
realm.add(persons)
}
}
}
}
} catch {
print("Error deserializing JSON: \(error)")
}
}
ありがとうございました@Yannick Working perfect :) –