realm swift v1.0.0 を使用しています。オブジェクトを作成し、その値を永続的に更新したいと考えています。公式ガイドと、私が行ったstackoverflowに関するその他の回答に従ってください:
let myobject = MyObjectClass()
myobject.property1 = "test"
try! myrealm.write {
myrealm.add(myobject)
}
myrealm はグローバル変数です。
let myrealm = try! Realm()
MyObjectClass のすべての値を回復すると、クラスの init に初期値が設定された myobject が返されます (初期値として設定した値は適切に保存されます) が、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?
}
別の Realm オブジェクトである property2 でも同じ問題が発生します。