2013-05-19 15 views
6

Desidero implementare un albero multidirezionale utilizzando i dati di base. Esiste un'entità "Plan" nel mio modello di dati di base.Modella una struttura ad albero in Core Data

  Plan 
     /| \ 
     Plan Plan Plan 
    /| \ |  | \ 
    Plan Plan ... 

Il piano di livello superiore dovrà rapporto a-molti con i sub-piani.

Quindi, come devo impostare la relazione?

enter image description here

enter image description here

risposta

13

definirei

  • un a-molti relazione subplans (o children) dal Piano un'entità a se stessa, con la "regola di eliminazione" impostato su "Cascade",
  • a a-uno relazione superplan (o parent) dal Piano un'entità a se stessa, con la "regola di eliminazione" impostato su "Nullify",
  • e impostare questi come le relazioni inverse l'una dell'altra.

Se si elimina uno Piano oggetto, quindi automaticamente

  • tutti i sub-piani vengono cancellati a causa della "cascata" elimina regola e
  • il piano viene rimosso dal suo oggetto genitore a causa della regola di cancellazione "Nullify".
+1

Questa è una buona risposta! –

Problemi correlati