My Core Data对象模型有三个嵌套对象,如下所示:
Item
Beverage
Brand
当我第一次创建Item
的实例时Item *item = [NSEntityDescription insertNewObjectForEntityForName:@"Item" inManagedObjectContext:self.objectContext];
item.beverage属性为nil。接下来,我想在item.beverage.brand.title属性中存储一个值。
我是否必须创建Beverage实例并将其分配给item.beverage,然后创建Brand实例并将其分配给item.beverage.brand。
item.beverage = [NSEntityDescription insertNewObjectForEntityForName:@"Beverage" inManagedObjectContext:self.objectContext];
item.beverage.brand = [NSEntityDescription insertNewObjectForEntityForName:@"Brand" inManagedObjectContext:self.objectContext];
之前我最终可以将值分配给title属性吗?
item.beverage.brand.title=@"Sample Title";
是否有更短/更简洁的方法来做到这一点?
答案 0 :(得分:1)
您需要在对象图中创建每个对象。我不知道任何核心数据提供的快捷方式。你当然可以编写自己的方法,类别或宏来减少冗长,如果你发现你自己写了很多样板代码。