假設我有一個名爲Playlist
的NSManagedObject子類。這個Playlist
對象與另一個名爲Song
的NSManagedObject子類具有多對多關係。假設我的Playlist
對象在關係中有一首與歌曲「歌曲A」相關聯的歌曲。核心數據爲多對多關係添加相同的對象
考慮到這個例子,我試圖再次向關係中添加「歌曲A」,la將兩首歌曲添加到播放列表中。
下面是用於添加對象到關係碼:
- (void)addSongsObject:(Song *)theSong {
NSMutableOrderedSet *song = [self mutableOrderedSetValueForKey:@"songs"];
[mutableSongs addObject:theSong];
}
哪裏self
是播放列表對象。由於關係中已有特定歌曲的實例,因此不會添加另一個實例。
什麼是最好的方式去做這個與核心數據?
也許做一個名爲「SongOccurrence」的中間包裝對象。這些在列表中也是獨一無二的,但其中兩個可能引用相同(獨特的)歌曲。 –
@NicolasMiari你應該做出答案而不是評論。這真的是唯一體面的解決方案。 –
我剛剛做到了;抱歉。我在我的iPhone上隨便瀏覽,因此不想輸入完整的答案。 –