ios - Core-Daten, aktualisieren von Datensätzen
Ich bin derzeit auf der Suche durch die Dokumentation und das web, aber ich bin nicht zu sehen, was ich Suche und möchte ich nur bestätigen, wenn das, was ich Suche besteht:-)
Wie ich es verstehe - diese Zeile von code, der mir erlaubt, einen Datensatz hinzufügen, um die SQLite-Datenbank, die zeige ich in meiner app über Core Data:
NSManagedObject *newSoftware = [NSEntityDescription insertNewObjectForEntityForName:
Nun gibt es eine Zeile wie die folgende, die mir erlaubt, den Datensatz aktualisieren, an dem ich arbeite?
sowas?
NSManagedObject *newSoftware = [NSEntityDescription updateCurrentObjectForEntityForName:
Vielen Dank für das feedback:-)
InformationsquelleAutor jwknz | 2012-07-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier meine Vorherige Antwort. Es ist Recht ausführlich, um zu verstehen, was Los ist.
So aktualisieren Sie vorhandene Objekt in Core Data?
Basierend auf fumoboy007 Kommentar, Sie müssen aktualisieren Sie Ihre Objekt-Trog, der KVC, wenn Sie noch nicht eingerichtet haben, eine Unterklasse für Ihre verwalteten Objekt. Wenn Sie nicht bereits getan haben, schlage ich, um es zu schaffen. Der code sieht aus wie mehr Reiniger, da können Sie acess einem verwalteten Objekt über Eigenschaften.
Hier ein link darauf:
Organisation-core-Daten-für-ios
Hi, ich habe noch eine Frage sorry hoffe du verzeihst mir:-) Anstelle von " @"Titel == %@", @"Einige Titel"]; wie in dem link, den Sie gab mir, ich mit @"name == %@", self.appNameTxtFld.text]; das problem ist Jetzt, dass alle meine info-Zeilen in das array zu bekommen verändert nicht nur die, die ich wählen. Wie kann ich spezifischer auf meine Handlungen?
Sorry, kann ich nicht verstehen, vielleicht noch ein edit zu deiner Antwort, und erklären Sie es. Ich werde versuchen, Ihnen zu helfen. Danke.
Danke für das Angebot zu helfen, ich ging zurück ans Reißbrett, wie ich landete mit so viel code, begann es zu schauen, wie spaghetti-Dschungel:-) ich habe es jetzt nicht genau in dieser Weise, aber ich verstehe es jetzt. Ich halte Sie in meiner Liste an Menschen gehen, wenn ich einen Core-Daten-Problem. Sie scheinen zu wissen, dass Teil ziemlich gut:-)
InformationsquelleAutor Lorenzo B
Um einen Datensatz zu aktualisieren, können Sie einfach aktualisieren Sie die
NSManagedObject
's Eigenschaften. Wenn Sie mit CoreData, sollten SieNSManagedObject
s für jedes Ihre "Tabellen". Holen Sie sich eine Referenz auf ein Objekt, nachdem Sie die Datenbank abgefragt (mitNSFetchRequest
). Sie können dann aktualisieren Sie den Datensatz wie folgt:myObject.firstName = "John";
Wenn Sie bereit sind, um das Objekt zu aktualisieren, die in Ihrer Sqlite-Datenbank ist, rufen Sie einfach Ihre
NSManagedContext
'ssave
Methode. Ich schlage vor, spielen Sie mit einem CoreData-Beispiel-app (wie den standardmäßig generierten Xcode) um diese besser zu verstehen.myObject.firstName = @"John";
funktioniert nur, wenn Sie ein NSManagedObject subclass. Wenn Sie nicht tun, dann würden Sie brauchen, zu tun[myObject setValue:@"John" forKey:@"firstName"]
.Ich hatte diese eingerichtet, bevor ich die Frage gestellt habe, aber statt der Aktualisierung eines Datensatzes er fügte hinzu, es als eine neue.
Gut erklärt, mit code.
InformationsquelleAutor melsam