15

我创建了一个名为“MyObject”的核心数据实体。然后我将实体重命名为“ThatObject”。但是每次我创建一个 NSManagedObject 子类时,它仍然会创建 .h/.m 文件作为 MyObject。

我将“MyObject”文件重命名为“ThatObject”,一切正常,但每次更改实体属性时都必须这样做,这很烦人。

知道如何解决这个问题吗?

4

2 回答 2

34

当您重命名实体时,请确保NameClassData Model Inspector 中重命名。在我的项目中,如果两者都被重命名,则新的自动生成的 NSManagedObject 子类将使用新名称创建。

重命名实体和类的对话框选项

于 2013-03-11T16:50:26.520 回答
10

对于未来的读者:请注意模型版本,如果您的应用程序已经发布,更新应用程序可能会破坏您用户设备上的数据库架构,从而导致启动时崩溃。Core Data 可以自动为这个简单的案例找到迁移,您可以在此处找到有关轻量级迁移的更多信息。您基本上必须设置一个重命名 ID,以便 CD 知道什么被重命名为什么,即使在两者之间跳过版本也是如此。

于 2017-06-14T12:45:44.827 回答