поле parent_id. С помощью рекурсии я собрал массив с нужной мне структурой. Ключ - это айдишник пользователя, значение - его дети. примерно такой:
1 => [
23 => 0,
24 => [
34 => 0,
25 => 0,
65 => [
77 => 0
]
]
]
Как мне во вьюхе теперь отобразить дерево пользователей, если уровень вложенности неизвестен?
Сделай компонент в который передавай значения Реализация компонента приблизительно такая если значения уже пользователь выводи его, если массив компонент вызывает сам себя и передает туда этот массив
foreach
рекурсия, очевидно. Но… У меня недавно тоже достался проект и там много деревьев было на базе. Рекурсивные запросы по базе дают большую нагрузку если их реализовывать средствами eloquent. Есть такая штука как CTE для свежих DBMS (mysql>8, mariadb>10.3...) С ними можно разобраться и это мощный инструмент, но запросы получаются хоть и многоэтажные однако быстрые. Стяпать их в RAW тяжело руками, но есть пакет, который большинство хотелок покрывает. Посмотрите https://github.com/staudenmeir/laravel-adjacency-list/tree/v1.9.5
Обсуждают сегодня