我目前有兩個實體,一個類別實體和一個項目實體,其中Category:Item爲1:m。使用「無動作」刪除規則並使用prepareForDeletion代替
我已將「無操作」規則應用於類別 - >項目關係,並實施了Category.prepareForDeletion以在刪除類別之前將類別中的所有項目移至特殊的全部捕獲類別(catch-all類別不可刪除)。
- (void)prepareForDeletion {
Category *misc = [Database theMiscCategory];
[misc addItems:self.items];
[super prepareForDeletion];
}
我的問題是這樣的:我錯過了什麼嗎?如果不是,我該如何關閉XCode關於「無動作」作爲高級功能的警告?
FTR,我沒有使用nullify,因爲它更便於應用程序的其他區域將某些東西轉儲到「misc」類別中,而不是處理具有空類別的項目。我確實嘗試過,但得到了一些意想不到的行爲 - 如果我把這個調用放在超級第一位,那麼在我可以收集要改變的一組項目之前,關係是無效的,如果我把它放在那之後,無效。我想我可以收集他們,然後調用超級,然後設置新的類別,但似乎klunky。
所以我認爲「沒有行動」是我想要的,只是想確保我不會錯過任何我應該在prepareForDeletion中管理的東西。
謝謝克里斯。我確實嘗試過,但得到了一些意想不到的行爲 - 如果我把這個調用放在超級第一位,那麼在我可以收集要改變的一組項目之前,關係是無效的,如果我把它放在那之後,無效。我想我可以收集他們,然後調用超級,然後設置新的類別,但似乎klunky。我確實認爲「沒有行動」是我想要的,只是想確保我沒有失去任何東西。 – Sasha