Modele una estructura de tree en Datos básicos

Quiero implementar un tree multi-way usando datos centrales. Hay una entidad de "Plan" en mi model de datos principal.

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

El plan del nivel superior tendrá muchas relaciones con los subplanos.

Entonces, ¿cómo debería establecer la relación?

introduzca la descripción de la imagen aquí

introduzca la descripción de la imagen aquí

Yo definiria

  • una subplans relación de subplans (o children ) de la entidad del Plan a sí misma, con la "Regla de eliminación" establecida en "Cascada",
  • un superplan relación de uno a uno (o parent ) de la entidad del Plan a sí mismo, con la "Regla de eliminación" establecida en "Anular",
  • y establecerlos como relaciones inversas entre sí.

Si elimina un object Plan , automáticamente

  • todos los subplanos se eliminan debido a la regla de eliminación "Cascada", y
  • el plan se elimina de su object principal debido a la regla de eliminación "anular".