2013-03-11 25 views
12

Ich habe eine Core Data Entity namens "MyObject" erstellt. Ich habe dann die Entität "ThatObject" umbenannt. Aber jedes Mal, wenn ich eine NSManagedObject-Unterklasse erstelle, erstellt sie immer noch die .h/.m-Datei als MyObject.Core Data Entity umbenennen

Ich nehme die "MyObject" -Dateien und benenne sie einfach in "ThatObject" und alles funktioniert, aber es ist nervig, das jedes Mal zu tun, wenn ich die Entitätsattribute ändere.

Irgendeine Idee, wie man das repariert?

+0

Haben Sie eine Versionierung in Ihrem Modell? – memmons

+0

Nicht, dass ich mir dessen bewusst bin. – Padin215

Antwort

28

Wenn Sie die Entität umbenennen, stellen Sie sicher, dass Sie sowohl Name als auch Class im Datenmodell-Inspektor umbenennen. Wenn beide in meinem Projekt umbenannt werden, werden die neuen automatisch generierten NSManagedObject-Unterklassen mit den neuen Namen erstellt.

+5

Ha! Unter "Konfigurationen" listet es die Entitäten und die Klasse auf. Die Klasse war immer noch auf "Mein Objekt" eingestellt. Vielen Dank! – Padin215

0

Für zukünftige Leser: Achten Sie auf die Modellversion. Wenn Ihre App bereits veröffentlicht wurde, kann das Aktualisieren der App das Datenbankschema auf den Geräten Ihrer Benutzer beschädigen, was beim Start zu einem Absturz führt. Core Data kann automatisch eine Migration für diesen einfachen Fall finden. Weitere Informationen zu leichten Migrationen finden Sie unter here. Sie müssen im Grunde eine Umbenennung ID so CD weiß, was umbenannt wurde, was auch wenn Sie Versionen dazwischen überspringen.