假设我有一张名为“Coffee Mug”的桌子,并与许多类型的“咖啡”有关系。
我可以访问Coffee Mug记录及其所有细节,但当我尝试通过关系获取咖啡类型时,我只得到指针值。
我正在尝试创建一个像这样的咖啡值数组:
self.coffeeTypeArray = [[NSMutableArray alloc] initWithArray:[coffeeMug.coffee allObjects]];
NSLog(@"Filled Array with: %i records", [self.coffeeTypeArray count]);
NSLog(@"Array contents: %@", self.coffeeTypeArray);
我的日志显示该数组填充了5个对象。但是不是我正在寻找的字符串,而是为每条记录得到这样的字符:
"<CoffeeTypes: 0x7f460b0> (entity: Coffees; id: 0x7f46100 <x-coredata:///Coffees/t113639D7-6BA1-4FDB-9739-7781EE6460134> ; data: {\n mug = \"0x7f40370 <x-coredata:///coffeeMugs/t113639D7-6BA1-4FDB-9739-7781EE6460132>\";\n coffee = Columbian;\n})"
我知道答案必须简单,但我的搜索条件已经用完了。
答案 0 :(得分:1)
您在数组中看到的是“Coffees”实体的托管对象。该实体具有属性coffee
,这似乎是您正在寻找的。 p>
以下内容适用于打印数组中所有对象的coffee
属性:
for (CoffeeTypes *theCoffee in self.coffeeTypeArray) {
NSLog(@"%@", theCoffee.coffee);
}
注意:也许您应该重新考虑实体和关系的命名。你的“咖啡”实体代表(据我所知)一种咖啡,所以“咖啡”(没有复数)将是一个更好的名字。另一方面,从“CoffeeMugs”到“Coffees”的一对多关系被称为“咖啡”。在这里,“咖啡”(带有复数形式)将是这种关系的更好名称。