我已經在iOS中爲領域對象設置了REST API。不過,我發現在我的對象中創建一個最喜歡的標誌有問題。我創建了一個最喜歡的布爾,但是每次從API更新對象時,它都會將最愛設置爲默認值false。在這裏我希望這個標誌不被更新,因爲最喜歡的只存儲在本地。我怎樣才能做到這一點?更新對象時,防止領域覆蓋屬性
class Pet: Object{
dynamic var id: Int = 1
dynamic var title: String = ""
dynamic var type: String = ""
dynamic var favorite: Bool = false
override class func primaryKey() -> String {
return "id"
}
}
CreateOrUpdate
let pet = Pet()
pet.id = 2
pet.name = "Dog"
pet.type = "German Shephard"
try! realm.write {
realm.add(pet, update: true)
}
你是說你不想在Realm中保存'favorite'嗎?如果是這樣,那麼當動態屬性被保存在Realm中時,移除'dynamic'。 – Abhinav
我的意思是'最喜歡'沒有存儲在遠程數據庫中,因此每次打開應用程序並添加新對象並根據主鍵'id'更新現有值時,它將設置最喜歡的值爲默認值('false ')。我可以避免它更新爲默認? –
這很奇怪。我假定Realm中的'createOrUpdate'方法不會觸及字典中未指定的屬性。您能否將實際保存/更新API數據的示例代碼添加到Realm中? – TiM