@vikholodov

Как получить все дерево категорий 1 родителя во вьюхе (django-mptt)?

avtotovary = Category.objects._mptt_filter(parent__slug='avtotovary-0')

Делал вот так, но я получают только 1 уровень дочерних категорий, а надо всю глубину, чтобы товары повытаскивать впоследствии.
  • Вопрос задан
  • 532 просмотра
Решения вопроса 1
@vikholodov Автор вопроса
.get_descendants(include_self=False)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
Получить корневые категории можно так:
roots = Category.objects.filter(parent__isnull=True)

Получить всех потомков какой-либо категории так:
categories = category.get_descendants(include_self=False)

Но получать категории не нужно, чтобы получить товары всех категорий, кроме корневых. Проще всего получить их так:
goods = Goods.objects.filter(category__parent__isnull=False)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы