核心数据以编程方式向条目添加属性

0xS*_*ina 3 cocoa-touch core-data objective-c ios

我刚刚开始使用核心数据.我有大量具有大约40-50个属性的实体.鉴于我有一个表示属性名称的字符串数组(这些属性的类型都是字符串),有没有办法可以通过编程方式从数组中设置属性?或者我是否必须手动将这些属性粘贴到Xcode IDE中?

Dan*_*ert 10

您可以以编程方式创建模型.Xcode IDE对大多数人来说是最简单的.

使用创建模型

NSManagedObjectModel *mom = [[[NSManagedObjectModel alloc] init] autorelease];
Run Code Online (Sandbox Code Playgroud)

然后用.创建你的实体

NSMutableArray *entities = [NSMutableArray array];
NSEntityDescription *event = [[[NSEntityDescription alloc] init] autorelease];
[entities addObject:event];
[event setName:@"Event"];
[event setProperties:eventProperties];
...
Run Code Online (Sandbox Code Playgroud)

然后将实体添加到模型中:

[mom setEntities:entities];
Run Code Online (Sandbox Code Playgroud)

请注意,一旦将模型与商店/上下文一起使用,就无法更改模型.

创建模型后,可以使用NSCoding保存模型.

这也显示在Core Data Utility Tutorial中.