Xcode 4,核心数据模型版本 – 设置当前版本
我对如何在Xcode 4中执行以下function感到困惑,以便在创build版本模型后将模型设置为使用。
devise>数据模型>设置当前版本
- 点击顶级的.xcdatamodelId文件(其中有许多版本的.xcdatamodel作为子文件)。
- 确保Utilities sidepane是可见的(如果没有点击窗口右上angular的第三个“View”button)。
- 在Utilities sidepane中selectFile inspector(文件检查器)(左上angular的小纸片图标)
- 您将看到“版本控制核心数据模型”作为一个组,所以只需将“当前”下拉菜单更改为新版本即可。
在Xcode 4中,如果在select* .xcdatamodeld文件时只在文件检查器的“Versioned Core Data Model – Current”部分下看到数据模型的一个版本, 或者您的* .xcdatamodel文件的第二版本显示在Xcode项目导航器中的xcdatamodeld包之外,请阅读下面的内容。
要解决这个问题:
1)在项目导航器中右键单击,从Xcode中删除* .xcdatamodeld和* .xcdatamodel引用,并点击“删除”。
2)当Xcode提示时,单击仅删除引用 (非常重要)。
3)重新启动Xcode,以防有任何caching进行。
4)重新添加包含* .xcdatamodel文件的单个* .xcdatamodeld文件。
Xcode现在应该识别这些关系,并允许您在项目导航器中展开* .xcdatamodeld文件,以在父级xcdatamodeld包下方显示两个* .xcdatamodel文件,并在当前模型旁边显示绿色复选标记。 这也应该允许您在文件检查器中select数据模型的当前版本,而不是仅显示一个版本。
对于Xcode 4.2
-
点击YourModel.xcdatamodeld
-
使侧窗格可见
-
在“版本化的核心数据模型”下,select“当前下拉框”,select你的数据模型。
现在,绿色的勾号标记将移动到您当前的数据模型中。
在Xcode的帮助中search“当前版本”产生一个配方“设置一个托pipe对象模型的当前版本”,描述了如何做到这一点…
一个小题目,但如果你已经到了这个问题,以了解如何创build你的模型的第一个新版本(像我这样做):单击xcdatamodel文件>>菜单“编辑器”>>添加模型版本
这将启动模型的版本。
这工作对我来说: https : //developer.apple.com/library/mac/recipes/xcode_help-core_data_modeling_tool/Articles/setting_current_version.html
select核心数据模型版本
现在我的自动db模型迁移工作(在委托中有自动迁移代码)。
你也可以使用CoraData的setter方法。
只要做这样的事情…
在您的CustomCoreDataManager.m中 :
#import "ObjectiveRecord.h"
并像这样调用init方法
- (instancetype)init { self = [super init]; if (self) { [[CoreDataManager sharedManager] setModelName:@"YourModelName"]; } return self; }