Ios 两个核心数据关系的一个查询?

Ios 两个核心数据关系的一个查询?,ios,objective-c,core-data,Ios,Objective C,Core Data,我有以下数据模型: 我想在playlist对象上有一个指向其歌曲列表的属性。现在我有一些类似于: self.songs = [self.playlistMemberships valueForKey:@"song"]; 但我注意到,这是非常缓慢的,核心数据似乎触发了每首歌的错误。有没有想过如何打一个电话来获取所有歌曲信息?谢谢 playlaymembership似乎有点碍事——你能直接将播放列表与歌曲联系起来,并剪掉播放成员资格?我认为这会让核心数据一次获取所有歌曲,而不是获取所有成员资格,

我有以下数据模型:

我想在playlist对象上有一个指向其歌曲列表的属性。现在我有一些类似于:

self.songs = [self.playlistMemberships valueForKey:@"song"];

但我注意到,这是非常缓慢的,核心数据似乎触发了每首歌的错误。有没有想过如何打一个电话来获取所有歌曲信息?谢谢

playlaymembership
似乎有点碍事——你能直接将
播放列表
歌曲
联系起来,并剪掉
播放成员资格
?我认为这会让核心数据一次获取所有歌曲,而不是获取所有成员资格,然后返回获取每首歌曲


如果您不能或不想删除成员身份实体,请使用
setRelationshipKeyPaths预览:
指定
song
应与成员身份一起获取。

我们希望保留此数据结构,以便它与服务器上的数据库保持平行,所以改变这一点并不是一个真正的选择。@quantka也许我的第二段会有所帮助。谢谢。我认为这是可行的,但还没有完全完成测试:[fetchRequest setRelationshipKeyPathsForPrefetching:[NSArray arrayWithObject:@“playlayMemberships.song”];您可以使用漂亮的新ish对象文字符号来缩短它:
[fetchRequest setRelationshipKeyPathsForPrefetching:@[@“playlayMemberships.song”]