Как вывести дочерние записи на странице родительской категории Django?

Помогите разобраться в логике. Вывожу записи через ListView:

class CategoryView(ListView):
    """Категория"""
    model = Item
    paginate_by = 24
    template_name = "category.html"


    def get_queryset(self, **kwargs):
        queryset = Item.objects.all()
        category = self.kwargs['slug']
        if category is not None:
            queryset = Item.objects.filter(category__slug=category).order_by('?')
        return queryset

Модель категории:

class Category(models.Model):
    """Категории"""
    title = models.CharField("Категория", max_length=300)
    description = models.TextField("Описание")
    slug = models.SlugField(max_length=300, unique=True)

    parent_category = models.ForeignKey('Category',
                                  related_name="Category", on_delete=models.SET_NULL,
                                  blank=True, null=True)

Если привязать дочернюю категорию к родительской, то записи на родительской не выводятся. Как поступить в этом случае? Если не использовать ListView, то как получать записи из дочерних категорий или хотя бы список дочерних категорий? Немного запутался... Направьте, в какую сторону копать? Django MPTT?


Ответы (0 шт):