0

我的应用程序已发布到应用商店。它以一种非正统的方式使用 Core Data。

我的 xCode 项目包含两个 xcdatamodeld 文件:userData 和 statisticsData。当我创建 ManagedObjectModel 时,我使用的是 mergeModelFromBundles。这需要我项目中的所有模型并将它们组合成一个模型。这允许我拥有一个持久性存储,并且我相信这简化了我的代码。

现在,我需要对我的 userData xcdatamodeld 进行版本控制。具体来说,我需要向我的一个实体添加一个字符串属性。

为了创建模型版本,我遵循了Stian概述的步骤。

我一直在清理项目和构建之间的构建文件夹,但仍然出现错误:

NSCocoaErrorDomain 代码=134130 “操作无法完成。(Cocoa 错误 134130。)” ...原因=找不到源存储的模型

如果我将模型的当前版本设置为原始模型,应用程序运行良好并读取应用商店版本创建的数据。但是如果我将模型的当前版本设置为更新版本,它就会崩溃。

谢谢您的帮助。

4

1 回答 1

0

If you successfully completed Stian's steps then you have added a new model version and activated it as the "current" version.

In my experience when I have more than one model version I have to switch from using "mom" to "momd".

Have you tried:

NSString* userDataPath = [[NSBundle mainBundle] pathForResource:@"User_data2" ofType:@"momd"];
于 2012-09-21T01:52:04.590 回答