2011-07-22 63 views
4

我的示例應用程序中有一對多關係,取自核心數據文檔,其中一位經理有多名員工。我瞭解如何設置經理 - 員工關係刪除規則,但員工與經理關係又如何?如果我想要一個案例,如果所有員工都被刪除了,我希望經理也被刪除,我應該申請什麼樣的刪除規則? Cascade沒有意義,因爲如果一個員工被刪除,即使他/她還有其他員工仍然關聯,經理也會被刪除。 Nullify將正確刪除關係,但在最後一名員工被刪除時不會刪除管理員。 我錯過了什麼,或者我必須在這種情況下做一些自定義的東西?核心數據 - 反向刪除規則...我應該使用哪一個?

回答

3

刪除規則沒有足夠的特異性說「如果關係'bobs'包含少於'x'的對象,則刪除自己。

相反,你應該把這樣的業務邏輯放在一個自定義的NSManagedObject子類中。您可以在ManagerremoveEmployeeObject:removedEmployeeObjects:中檢查方法,該方法告知Manager實例在employees關係爲空時自行刪除。

您也可以對此方法或willSave方法使用驗證方法。