好的,这是我模特的一部分:
我有一个使用NSFetchedResultsController填充的TableViewController。在TableViewController中,我想显示属于特定播放列表的所有歌曲。我希望通过某种方式获取播放列表歌曲关系所指向的所有歌曲实体来实现此目的。这个TableViewController有一个播放列表对象的引用(虽然我怀疑这对我有帮助)。
我的困难在于建立谓词。
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Playlist"];
request.predicate = [NSPredicate predicateWithFormat:@"(self.playlistSongs)"];
答案 0 :(得分:2)
首先,如果要显示歌曲,则必须创建提取请求 关于“歌曲”实体:
NSFetchRequest *request = [NSFetchRequest fetchRequestWithEntityName:@"Song"];
要将结果限制为给定播放列表的歌曲,请使用“歌曲”中的关系 到“播放列表”。这是 to-many 关系,因此您必须指定“ANY”:
request.predicate = [NSPredicate predicateWithFormat:@"ANY playListIAmIn == %@", selectedPlaylist];