Нужно сделать, вывод древовидных комментариев с определенным числом вложенности, к примеру 5. Желательно обойтись без рекурсии и пользоваться методами фреймворка, чтобы не делать велосипед.
структура таблицы комментариев:
id
parent_id
user_id
text
created_at
Дмитрий Байчапанов: если внимательно прочитать статью а не просто зная nested sets сказать, что он не подходит то решение найдется. Даже nested sets решение грамотнее вашего...
Максим Тимофеев: О я не знал, что Александр Макаров писал фреймворк) думал это просто так у него статус йии кор тим) Нестенд сетс уже рассмотрел, спасибо) Мне теперь интересно узнать как рекурсию сделать отдельно для выбоки с базы данных, и отдельно для вывода во вью.
А зачем отдельно? И обычно этим занимается компонент который Вы установили ( https://github.com/paulzi/yii2-nested-sets) или не установили. В любом случае в его коде есть ответы на все эти вопросы.
приведите пример кода, но вообще если вы укажете with('relation') - Yii сделает агрегирующий запрос с IN clause, вместо n комментарием = n запросов. joinWith - оставили для фильтрации результата с использованием таблицы которой делаете join, на сколько я понял, так как с joinWith Yii AR делает все равно агрегирующий запрос с IN clause, можете проверить и посмотреть в дебагере
Да выборка у меня с помощью with(). Получается код выборки объектов тот же самый останется, а поведения нужны чисто для работы с готовым массивом объектов?
Это же фреймворк, он не выводит комментарии, у него таких методов нету. :)
Реализовать рекурсивный вывод - это ж элементарно. :)
Вам почему-то насоветовали какие-то заумные деревья использовать.
Интересно, какие возможности деревьев будут использоваться? :)
Комментарии будут же выводится все сразу? :)
Я думаю деревья насоветовали потому, что задача стояла так "Как в yii2 организовать древовидные комментарии?" В сабж не вникай комментарий оставляй.....