'DBOfflineOrder'没有主键,无法更新swift领域

时间:2018-04-11 16:49:59

标签: ios swift realm

我在Realm中有实体:

class DBOfflineOrder: Object {
    dynamic var date: String = "" //
    dynamic var orderDescription: String = ""
    dynamic var email: String = ""
    dynamic var phone: String = "" 
    dynamic var login: String = "" 
    dynamic var number: String = "" 
    dynamic var amount: Double = 0.0 
    dynamic var discount: Double = 0.0 

    let products = List<ProductOffline>()
}

正如您所注意到的,它没有主键,因为它没有id。

当我打电话给跟随时:

let realm = Repository.initRealm()
realm.beginWrite()
let offlineOrder = DBOfflineOrder(order: _order)
realm.add(offlineOrder, update: true)
try! realm.commitWrite()

我遇到了崩溃。它说:

  

'DBOfflineOrder'没有主键且无法更新

但我不需要PK,也没有可能就是这样的属性。

1 个答案:

答案 0 :(得分:0)

要更新领域对象,必须拥有主键。因此,如果您不想更新对象,则可以使用realm.add(offlineOrder)