私が読んでいることから、のような関係のdepartment <->> employee
場合、部門の最後の従業員が削除された場合に部門が削除されるという単純な削除ルールを設定することはできません。代わりに、このルールをコーディングする必要があります。
didChangeValueForKey:
部門エンティティの方法で、Key-Value監視を使用するかもしれないと思いました。この削除アクションをDRYの方法で1か所に集中させたいと思います。
次のように、部門エンティティが自分自身を削除できるとは思いません。
- (void) didChangeValueForKey:key {
if (![key isEqualToString @"employee") return;
if (self.employee == NULL)
[self deleteAndSave]; // a category method
}
代わりに通知を投稿するかもしれません
- (void) didChangeValueForKey:key {
if (![key isEqualToString @"employee") return;
if (self.employee == NULL)
[[NSNotificationCenter defaultCenter] postNotificationName:@"empDelete" object:self];
}
次に、管理対象オブジェクトのコンテキストなどを処理するオブジェクトで削除を実行します。
これを簡単にする何かが欠けていますか?