Django mptt фильтры детей

Я создаю сайт электронной коммерции, на котором есть категории и подкатегории. Я использую модель Django MPTT для категорий. Я хочу добавить дочерние элементы категории при фильтрации категории, а при фильтрации дочерних элементов отфильтровать только дочерние элементы.
. Вот процесс фильтрации, который я пробовал:
views.py

def categoryview(request):
category = Category.objects.all()
return render(request, 'products/category.html', {'category':category})

def filteredproducts(request, slug):
category = Category.objects.get(slug = cat_slug, is_active =True)
products = Products.objects.filter(category = category, is_active = True).order_by('-created_on')
return render(request, 'products/filteredproducts.html', {'products': products})

models.py

class Category(MPTTModel):
    category = models.CharField(max_length = 255)
    cat_slug = models.SlugField(max_length = 255, unique = True, default = 'random')
    parent = TreeForeignKey('self', on_delete=models.CASCADE, null=True, blank=True, related_name='children')

    class Meta:
        unique_together = ('cat_slug', 'parent')
        verbose_name_plural = "categories"

    def __str__(self):
        return self.category
Вернуться на верх