正確的解決方案是將第三個實體表示事件的成員資格加入到最愛列表中。我們稱之爲EventInFavourites
。
EventInFavourites
有兩個多到一個關係:
Favourites
< -------- >>EventInFavourites
這一個說,一個Favourites
可以在裏面
Event
<有幾個Event
---------- >>EventInFavourites
這個人說事件可以是幾個Favourites
列表的一部分。
最後,該喜好列表中的該事件的位置用 EventInFavourites
的屬性來表示,比方說position
。
因此,當您想將事件添加到收藏夾列表中時,您將創建EventInFavourites
實例,並將其鏈接到該事件以及該收藏夾列表。有點像這樣:
EventInFavourites *newFavouriteMembership = [EventInFavourites insertInManagedObjectContext:self.moc];
newFavouriteMembership.event = anEvent;
newFavouriteMembership.favourites = aFavouritesList;
newFavouriteMembership.position = 3; // or whatever
[self.moc save:NULL];
我遺漏了一些細節,但是應該給你一個大的圖片。當然,你可以等待iOS 5.
輝煌。我從來沒有想過這樣做,但它完美的作品。謝謝。 – JDx
我很高興幫助。不要猶豫,把我投票! –