1

我想知道是否设置NSDictionaryreault 类型并添加关系会在结果中显示这些对象。

示例 我有一个带有 toCarparts 关系的汽车对象。

carPart 对象具有名称、品牌等。我只想调出 carParts.name。

那么我可以将实体设置为汽车,然后搜索 toCarParts 并只返回名称吗?

如果是这样,我会怎么做?

谢谢!

4

2 回答 2

6

您只能在 in 中使用一对一关系propertiesToFetch,例如:

NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Car"];
[fetchRequest setResultType:NSDictionaryResultType];
[fetchRequest setPropertiesToFetch:@[@"name", @"toCarParts.name"]];

如果toCarParts是一对一的关系会起作用。它将返回带有汽车名称和相关汽车部件名称的字典。

它不适用于一对多关系。

于 2013-03-19T12:35:46.297 回答
1

不,您不能只获取实体的单个属性。

更新

看起来那是错误的。似乎可以使用 NSDictionaryResultType 仅获取某些特定属性,请查看链接。也许你的问题可以用这个来解决。

PS 感谢您推动我解决这个问题,我在上一本书 Marcus Zarra 的书中没有找到任何关于此的内容。

于 2013-03-19T12:15:00.603 回答