Как иметь генеалогию рекурсивного дерева в Symfony? - PullRequest
0 голосов
/ 10 февраля 2019

Я делаю генеалогию по дереву в Symfony.

У меня есть две сущности:

User: id    firstname    partner    
       1    Julien       Anne      
       2    Eric         Marie    

Relation: id    family_id    child
          1     1            Manon 
          2     1            Camille
          3     2            Julie

Я хотел бы иметь генеалогию с рекурсивным деревом, как у ребенка может быть партнер, а у него могут быть дети, ноЯ не знаю, как это сделать.

Неужели мне нужна другая сущность?

Спасибо за вашу помощь

1 Ответ

0 голосов
/ 10 февраля 2019

Вам нужно подумать о дизайне данных, прежде чем пытаться применить его к определенной среде программирования.

Подумайте о том, чтобы отделить (всех) людей от (всех) отношений.

Человек: Имя, Идентификатор (и любая другая демография, которую вы хотите сохранить, например, дата рождения)

Отношение: Id1, Id2, Тип отношения

Тип отношения может быть Партнер, Ребенок.

Тогда вы можете без проблем дать ребенку партнера или собственного ребенка.

Надеюсь, это имеет смысл.

...