質問: Cocoa - Core Dataオブジェクトグラフ 次のオブジェクトの削除を処理するにはどうすればよいですか?私の削除ルールはどのように見えるのですか? 私のオブジェクトグラフは次のようになります: **上司** * Boss-Departmentに多対多の関係があります * Bossが削除された場合、 そのボスに所属する部署は**削除しない**(ただし、 このボスとの部署の関係は削除する必要があります) **部門** * 部門 - 従業員は多対多の関係を持っている * 部長は多対多の関係を持っています * 部門 削除された場合、その部門に属する従業員は、 他の部門との関係がない場合は**削除**します **従業員** * 従業員部門に多対多の関係があります * 従業員は決して直接削除されません(部署の削除時のみ)。ああ幸せな生活!
回答: このような状況では、オブジェクトの削除ルールは次のように処理する必要があります Boss-Department -> Nullify Department-Employee -> Deny Department-Boss -> Nullify Appleが「削除ルール」を > 拒否:関係先に少なくとも1つのオブジェクトがある場合、 > ソースオブジェクトは削除できません。たとえば、 > 部門を削除する場合は、その部門のすべての従業員 > 最初に部署が他の場所に移管される(または解雇される) > 部門は削除できません。 > > > > 無効にする: > 送り先のオブジェクトをnullにします。たとえば、 > 部門では、現在のすべてのメンバーの部門をnullに設定します。 > これは、従業員の部署関係 > オプションであるか、各自に新しい部門を設定する > 次の保存操作の前に従業員の > > > > カスケード: > 関係の宛先にあるオブジェクト。たとえば、 > 部門を削除し、その部門のすべての従業員を > 同時。 > > > > 何もしない:目的地のオブジェクトに何もしない > 関係。たとえば、部門を削除する場合は、すべての > 従業員は依然として彼らが所属すると信じていても > その部門。 > > For more information check out the CoreData Programming Guide