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