Sollte ich Cascade verwenden oder in Core Data für eine Beziehung aufheben?

8

Ich habe eine Eins-zu-viele-Beziehung und ich versuche nur ein paar Dinge zu klären. Wenn ich die Beziehung von A & lt; - & gt; & gt; B alles ist großartig und funktioniert genau so, wie ich es mag. Aber wenn ich die Beziehung ändern, alles löschen und ein paar verschiedene Bs hinzufügen möchte (als zuvor), würde ich die Beziehung löschen, indem ich annulliere oder kaskadiere, wenn ich möchte, dass sie an beiden Enden entfernt wird?

Könnte mir auch jemand ein kurzes Beispiel dafür geben, wie ich damit umgehen könnte?

Ich habe etwas wie [b setValue:nil forKey:myRelationship]

gedacht

Ist das irgendwo in der Nähe? Oder brauche ich etwas anderes?

Danke.

    
James Dunay 13.07.2011, 17:53
quelle

1 Antwort

16

Diese Beziehungstypen gelten, wenn Sie verwaltete Objekte selbst löschen und die Beziehungen nicht löschen. Also, wenn Sie Objekt 'a' mit 'b', 'c' und 'd' verbunden haben, dann wenn Sie 'a' löschen:

  • Wenn die Beziehung "cascade" ist, werden auch "b", "c" und "d" gelöscht
  • Wenn es 'nullify' ist, dann wird nur die Beziehung zurück zu 'a' für diese Objekte gelöscht.

In allen Fällen können Sie [b setValue: nil für Key: myRelationship] verwenden, um die Beziehung auf beiden Seiten zu löschen.

    
Ben Gottlieb 13.07.2011, 17:58
quelle