¿Cómo modelar una relación auto-referencial con muchos padres?
Quiero modelar lo siguiente de la manera más fácil:
Una habilidad tiene muchas habilidades dependientes.
Cada habilidad debe existir por sí misma, y una habilidad puede tener otras habilidades que son habilidades de requisito previo.
Por ejemplo:
Skill: Front-End Development Has Dependent Skills -> [HTML, CSS, SCSS]
Skill: Web-Design Has Dependent Skills -> [HTML, CSS]
Skill: HTML
Me gustaría poder hacer:
@front_end_development.dependent_skills ##or a more semantic mapping
Probablemente me gustaría subir por el árbol, pero no puedo pensar en el mejor nombre para hacerlo. Tal vez me gustaría hacer referencia a través de HTML que el diseño web depende de ello.
¿Tiene sentido hacer que esto sea auto-referencial o el hecho de que esto esté dañando mi cerebro sea un olor de código y suplica que otra cosa es ideal? Todo se reduce a una habilidad que depende de otras habilidades.
¿Sería mejor modelar esto usando mongo?