我想知道设置NSDictionary
的结果类型,并添加一个到关系是否会在结果中显示这些对象。
carPart对象有名称、品牌等。我只想显示carParts.name。
那么我可以将实体设置为汽车,然后搜索toCarParts并只返回名称吗?
如果有,我该怎么做呢?
谢谢!
您只能在propertiesToFetch
中使用to-one关系,例如:
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Car"];
[fetchRequest setResultType:NSDictionaryResultType];
[fetchRequest setPropertiesToFetch:@[@"name", @"toCarParts.name"]];
如果toCarParts
是一对一关系,将起作用。它将返回包含汽车名称和相关汽车部件名称的字典。
它不适用于对多关系
不,你不能只获取一个实体的单个属性。
看起来像那是错的。似乎有可能使用NSDictionaryResultType只获得一些特定的属性,查看这个链接。也许你的问题可以用这个来解决。
注:谢谢你让我解决这个问题,我在Marcus Zarra的新书中没有找到任何关于这个的内容。