Tôi đang sử dụng Realm trong một dự án iOS Swift mới. Tôi đang sử dụng Xcode 6.0.1 với iOS SDK 8.0 và Realm 0.85.0Cách đặt khóa chính trong Swift cho mẫu Realm
Tôi đang cố gắng sử dụng tính năng chính của Khóa chính mới để tôi có thể thực hiện addOrUpdateObject
.
Đây là một mô hình mẫu:
import Foundation
import Realm
class Foo: RLMObject {
dynamic var id = 0
dynamic var title = ""
func primaryKey() -> Int {
return id
}
}
Và làm thế nào tôi đang cố gắng để thêm/cập nhật một đối tượng mới:
let foo = Foo()
foo.title = titleField.text
foo.id = 1
// Get the default Realm
let realm = RLMRealm.defaultRealm()
// Add to the Realm inside a transaction
realm.beginWriteTransaction()
realm.addOrUpdateObject(foo)
realm.commitWriteTransaction()
tôi nhận được lỗi này:
RLMExecption', reason: ''Foo' does not have a primary key and can not be updated
Đây là các tài liệu trên khóa chính. Tôi có lẽ không đặt nó một cách chính xác:
http://realm.io/docs/cocoa/0.85.0/api/Classes/RLMObject.html#//api/name/primaryKey
tài liệu mới nhất đang ở đây bây giờ: https://realm.io/docs/objc/latest/api/Classes/RLMObject.html#//api/name/primaryKey
vỡ liên kết đến realm.io doc – styler1972
Chúng tôi đã chuyển "cacao" của chúng tôi tài liệu để "objc" khi chúng tôi đưa ra Realm Swift, vì vậy hãy thử liên kết này thay thế: https://realm.io/docs/objc/latest/api/Classes/RLMObject.html#//api/name/primaryKey Chúng tôi đang thiết lập chuyển hướng từ liên kết cũ để điều này không gây ra nhiều nhầm lẫn trong tương lai. – jpsim
Chuyển hướng từ liên kết cũ sang tài liệu mới dường như không hoạt động nên tôi đã cập nhật câu hỏi của mình bằng liên kết mới. – jeffjv