基本上,我有一个Versioned xcdatamodel
,我正在从V2迁移到V3
我使用自定义政策创建了Mapping Model
。
PersistenStoreCoordinator
尝试完成其工作后,我点击 Cocoa错误编号134140(无法找到迁移的映射模型)
This Question基本上和我一样,但我正在使用 Xcode 4.6.3
我尝试过的事情:
xcmappingmodel
驻留在xcdatamodelId
内,并确保我的地图模型的大小不是0kb(根据question的答案xcdatamodelId
引用并将其添加回(answer of this question) 编辑如果有人有兴趣,这是我的调试声明......
Handling DB Upgrade
sourceMetadata is {
NSPersistenceFrameworkVersion = 419;
NSStoreModelVersionHashes = {
OriginalPicture = <ce8de6ad c694b569 dcc1d706 d4df3928 05052cab 14a092f1 340cbf01 2306e861>;
PanoramicInfo = <923298fa 0af16c01 d5ba91ca 19c6252c 8adee68a bfe7b86b 75285500 6883a1aa>;
};
NSStoreModelVersionHashesVersion = 3;
NSStoreModelVersionIdentifiers = (
""
);
NSStoreType = SQLite;
NSStoreUUID = "F83640F3-8686-438F-97CC-48311EB74B9C";
"_NSAutoVacuumLevel" = 2;
}
Not Compatible Models Migration is NEEDED!
SourceEntity: OriginalPicture: <ce8de6ad c694b569 dcc1d706 d4df3928 05052cab 14a092f1 340cbf01 2306e861>
DestinationEntity: OriginalPicture: <ce8de6ad c694b569 dcc1d706 d4df3928 05052cab 14a092f1 340cbf01 2306e861>
SourceEntity: PanoramicInfo: <923298fa 0af16c01 d5ba91ca 19c6252c 8adee68a bfe7b86b 75285500 6883a1aa>
DestinationEntity: PanoramicInfo: <1d7836cd f3ccf5fa 487c1984 e2b3f46c abc3b706 c06512d5 0bac698c a5d8cb20>
The operation couldn’t be completed. (Cocoa error 134140.)
第二次编辑
我一直在尝试使用以下方法直接获取映射模型:
NSURL *fileURL = [[NSBundle mainBundle] URLForResource:@"Update23Model" withExtension:@"cdm"];
但奇怪的是,fileURL指向nil .....
如何将映射模型添加到捆绑包中?
答案 0 :(得分:1)
看起来像 Xcode 4.6.3 错误...
xcmappingmodel
一定不能出现在任何组文件夹中......
当我在xcode项目的根级别创建它时,IDE找到了映射。
答案 1 :(得分:0)
this answer会解决您的问题吗?这个问题看起来很相似,如果它没有帮助就很抱歉。
答案 2 :(得分:0)
如果您的测试设备商店来自不再存在的数据模型版本,则会发生这种情况。
例如,我有数据模型版本7,然后我制作了数据模型版本8.我制作了一个从7到8的映射模型。然后我做了一些更改为8.当我打开该应用程序时,它会给出此错误,因为映射模型所基于的版本为8,不再存在。