我正在使用领域 swift v1.0.0,我创建了一个对象,我想永久更新它的值。按照官方指南和关于stackoverflow的一些其他答案,我已经完成了:
let myobject = MyObjectClass()
myobject.property1 = "test"
try! myrealm.write {
myrealm.add(myobject)
}
而 myrealm 是一个全局变量:
let myrealm = try! Realm()
当我恢复 MyObjectClass 的所有值时,我返回 myobject,并在类的 init 中设置了一些初始值(因此我设置为初始值的值被正确存储),但是 property1 是(null)(因为它被声明为一个可选字符串)。
但是,如果我在上面编写代码的函数中查看 myobject,它的 property1 设置为“test”,但它并没有永久保存在 Realm db 中。
谁能帮我找出为什么它不更新 property1 的值?我也尝试过:
try! myrealm.write {
myrealm.add(myobject, update: true)
}
编辑:
这是我的模型:
public class MyObjectClass(): Object {
//[...]
public dynamic var property1: String? = nil
public dynamic var property2: MyObjectClass2?
}
同样的问题也发生在另一个领域对象 property2 上。