1

问题:为简单起见,我有两个 NSManagedObject(A 和 B),其中 B 与 A 是一对一的关系。在我的 propertiesToFetch 中,使用 B 作为实体类型,我有许多 B 属性。这可行,但是我想要的是从一对一的关系中也包括 A 的属性(例如“名称”)。

建议?

编辑:

NSFetchRequest *fetchR = [NSFetchRequest fetchRequestWithEntityName:ClassName(B)];
fetchR.predicate = [NSPredicate predicateWithFormat:@"active = %u",1];
fetchR.resultType = NSDictionaryResultType;
fetchR.propertiesToFetch = [NSArray arrayWithObjects:
                            [self propertyDescriptionFor:@"name" inEntity:ClassName(B)],
                            [self propertyDescriptionFor:@"age" inEntity:ClassName(B)], 

// Here is where I want to add something like "a.name"

                            nil];
4

1 回答 1

3

我不知道propertyDescriptionFor:inEntity:方法(它在哪里定义?),但你可以只提供一个字符串数组propertiesToFetch

fetchR.propertiesToFetch = [NSArray arrayWithObjects:@"name", @"age", @"a.name", nil];

一对一的关系应该“正常工作”。

于 2013-03-23T11:44:18.610 回答