2011-07-13 7 views
8

Tengo una relación uno a muchos y estoy tratando de aclarar algunas cosas. Cuando configuro la relación desde A < - >> B, todo es genial y funciona como a mí me gusta. Pero cuando quiero cambiar la relación, aclarar todo y agregar un par de B's diferentes (que hice antes), ¿eliminaría la relación usando nullify o cascade si quisiera que se elimine en ambos extremos?¿Debo usar Cascade o anular en Core Data para una relación?

¿Podría alguien darme un ejemplo rápido de cómo podría hacerlo?

que estaba pensando algo así como [b setValue:nil forKey:myRelationship]

Es que en cualquier lugar cerca? ¿O necesito algo más?

Gracias.

Respuesta

16

Estos tipos de relaciones se aplican cuando se eliminan los objetos administrados por sí mismos, sin borrar las relaciones. Por lo tanto, si usted tiene objeto 'a' vinculado a 'b', 'c' y 'd', a continuación, cuando se elimina 'a':

  • si la relación es 'en cascada', 'b', 'c', y 'd' también se eliminarán
  • si es 'anular', entonces solo la relación de regreso a 'a' se borrará en estos objetos.

En todos los casos, puede usar [b setValue: nil for Key: myRelationship] para borrar la relación en ambos lados.

Cuestiones relacionadas