我有最新版本的Xcode,当我选择我的.xcdatamodel文件然后选择“Data Model”=> “添加模型版本”,我得到以下对话框:
内部错误
档案:...... 线:... 对象:... 方法:......
无法在版本组“MyApp1.xcdatamodeld”中创建新版本“MyApp1 2.xcdatamodel”
=====================
它清除了旧的.xcdatamodel目录,并创建了一个新的.xcdatamodeld目录,但没有任何内容。
幸运的是,我有原始目录的旧副本,我可以轻松地恢复它,但我需要以迁移旧版本的方式更新架构。
我知道如何手动完成这项工作?
答案 0 :(得分:1)
有类似的问题,虽然我确实在xcdatamodeld资源组中保留了我的模型。我不得不将该资源拖回Xcode。然后更换
- (NSManagedObjectModel *)managedObjectModel;
在我的appDelegate中使用以下代码...
- (NSManagedObjectModel *)managedObjectModel {
if (managedObjectModel != nil) {
return managedObjectModel;
}
NSString *path = [[NSBundle mainBundle] pathForResource:@"your_model" ofType:@"momd"];
NSURL *url = [NSURL fileURLWithPath:path];
managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:url];
return managedObjectModel;
}
答案 1 :(得分:0)
当项目格式设置为Xcode 3.2兼容时,我的项目就会发生这种情况。此设置位于信息窗口下,项目格式下拉列表。我已将其从默认值中更改,原因并非如此。
将其恢复为默认设置,Xcode 3.1兼容,让我的问题消失了。我正在使用3.2.4和iOS 4.1 GM SDK。