我有一个使用CoreData的应用程序。
我之前有一个名为Marker的类,它与Core Data中的Marker实体相关联。
我将Marker类重命名为CoreDataMarker。所以我创建了一个新的.xcdatamodel文件,其中包含该实体的新类名。然后我创建了一个.xcmappingmodel并选择了旧的和新的.xcdatamodel文件,似乎'自动设置'很好。
然而,当我运行我的应用程序时,它抱怨:“无法将模型与名为'Marker'的两个不同实体合并”。我知道这种情况会发生,但我不知道如何解决它。
你知道吗?
提前致谢!
答案 0 :(得分:10)
您不需要新的xcdatamodel。将Marker
实体的实体说明中的“类”字段更改为CoreDataMarker
。这就是所需要的。实现类信息不需要模式迁移。
答案 1 :(得分:0)
确保仅数据模型的当前版本(最新的xcdatamodel文件)包含在目标和映射模型文件中。看起来根据来自xcmappingmodel文件的信息自动完成其他模型文件。
这是不直观的,但这对我有用。