Ich versuche ein Favoriten-System für meine App zu schreiben. Ich habe mein Modell bereits in ein verwaltetes Objekt konvertiert. Stellen Sie sich vor, dem Benutzer wird ein Bildschirm mit einer Liste solcher Objekte angezeigt. Sie können wählen, einige zu ihren Favoriten zu speichern, die sie in den Kerndaten bestehen bleiben.Kerndaten: Erstellen Sie mehrere verwaltete Objekte, aber nur einige speichern?
Das Problem ist, wenn ich alle diese Modellobjekte erstellen, mache ich dies mit dem Kontext des verwalteten Objekts. Wenn der Benutzer einen einzelnen in seine Favoriten speichert, wird der gesamte Kontext gespeichert und jede einzelne Entität beibehalten. Die Extras werden nicht in ihren Favoriten sein, da das Hinzufügen zu den Favoriten eine "Lieblings" -Entität erstellt, die gespeichert wird und auf das Objekt zeigt, was die anderen nicht haben werden. Aber alle anderen Objekte werden unnötig gespeichert.
Was ist der Standard Weg aus diesem/Standard Weg, ein iPhone Favoriten-System zu entwerfen? Sollte ich mein Modell in zwei Klassen aufteilen, die ich dem Benutzer zeige und dann eine, die in der Datenbank gespeichert wird? So konnte ich meine Modelle konstruieren, ohne sie in den MOC zu stecken. Aber das wäre eine doppelte Klasse mit den gleichen Feldern.
Und das ist sicher? Ich habe gesehen, dass die Convenience-Methode zum Erstellen von NSMOs einen ziemlich großen Codeabschnitt ersetzt. – Tesserex
Ja ist es sicher, welche Bequemlichkeitsmethode? Die beschriebene Methode entspricht dem Aufruf von '[NSEntityDescription einfügen ...]'. Der einzige Unterschied besteht darin, dass die 'NSEntityDescription'-Methode ein automatisch freigegebenes Objekt zurückgibt. –
Ok, du hast nur dein zweites Ding zurück. Der korrekte Aufruf ist '[[self managedObjectContext] addObject: object]', die Konversation, die Sie dort haben, existiert nicht. – Tesserex