Sto utilizzando Realm in un nuovo progetto iOS Swift. Sto usando Xcode 6.0.1 con iOS SDK 8.0 e Realm 0.85.0Come impostare la chiave primaria in Swift per modello Realm
Sto provando a utilizzare la nuova funzione di chiave primaria di Realm in modo da poter eseguire uno addOrUpdateObject
.
Ecco un modello di esempio:
import Foundation
import Realm
class Foo: RLMObject {
dynamic var id = 0
dynamic var title = ""
func primaryKey() -> Int {
return id
}
}
E come sto cercando di aggiungere/aggiornare un nuovo oggetto:
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()
ottengo questo errore:
RLMExecption', reason: ''Foo' does not have a primary key and can not be updated
Ecco i documenti sulla chiave primaria. Non sto probabilmente impostazione corretta:
http://realm.io/docs/cocoa/0.85.0/api/Classes/RLMObject.html#//api/name/primaryKey
ultimi documenti sono qui ora: https://realm.io/docs/objc/latest/api/Classes/RLMObject.html#//api/name/primaryKey
link interrotto al realm.io doc – styler1972
Abbiamo spostato i nostri documenti "cacao" a "objc" Quando abbiamo lanciato Reame Swift così, prova questo link: https://realm.io/docs/objc/latest/api/Classes/RLMObject.html#//api/name/primaryKey Stiamo impostando i reindirizzamenti dai vecchi link, quindi questo non causare tanta confusione in futuro. – jpsim
Il reindirizzamento dai vecchi collegamenti ai nuovi documenti non sembra funzionare, quindi ho aggiornato la mia domanda con il nuovo collegamento. – jeffjv