如果我有一個List對象和一個ListItem對象,並且List與ListItem有一對多的關係,那麼編輯列表的最佳設計是什麼?我取得與使用核心數據和魔法記錄編輯自定義對象
// Find the list we're supposed to edit
temporaryList = [List MR_findFirstByAttribute:@"uniqueID" withValue:_editingListID];
列表,然後可以更新其簡單的屬性,如姓名
temporaryList.name = @"new name";
但是我不知道如何最好地更新其listItems中。它按照核心數據結構存儲在NSSet中,並且在創建新列表時將每個ListItem存儲在以下內容中。
ListItem *listItem = [ListItem MR_createInContext:_managedObjectContext];
所以,當我去編輯列表的內容,我想重置時listItems
// something like
list.contents = nil;
list.contents = mynewarrayoflistitems
它的NSSet但是,我也需要一種方法來刪除舊listItems中的那被保存在記憶中。我應該怎麼做呢?我的第一個想法是刪除正在編輯的列表(這將導致casacade效果發生,並將刪除所有ListItems,然後重置所有列表的內容,名稱,ID等。這是最佳實踐?
好,非常感謝您的建議 – Apollo
你也介意快速瀏覽一下相關的Core Data問題:http://stackoverflow.com/questions/17814656/passing-a-managedcontext-with-core-date-神奇紀錄 – Apollo