Этап
Открыта
Тип
Задача
Приоритет
Обычный
Трудоемкость
Сложная
Создана
Дата создания
год и 4 месяца назад
Назначена
Обновлена
год и 4 месяца назад

Выделено из tndt-44, чтобы та не оказалось черезмерно сложной и долгой.

Думается в нашем случае лучше всего дерево организовывать через path. Категорий будет не так много, не более пары десятков, перемещать их будут редко, так что обходящие методы не нужны.

Здесь мы доабвляем к категории колонку path, в ней указываются slug всех родительских категорий.

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

Ну а фильтрация будет просто соответствовать квери.

Панель управления