Как получить все товары в подкатегории при фильтрации через родительскую категорию в django rest
Когда я фильтрую по подкатегориям, отображаются только те продукты, которые непосредственно связаны с этой категорией, а когда я фильтрую родительскую категорию, возвращается пустое, но на самом деле в этой родительской категории есть подкатегория и есть продукты в этой категории. Я хотел убедиться, что возвращаются все продукты, связанные с родительскими категориями.
в файле views.py
class ProductViewSet(viewsets.ModelViewSet):
queryset = Product.objects.all()
serializer_class = ProductsSerializer
serializers = {
'create': ProductsSerializer,
'list': ProductDetailSerializer,
'retrieve': ProductDetailSerializer,
'default': ProductsSerializer,
'add_favorite': FavouriteSerializer
}
filter_backends = (filters.DjangoFilterBackend, OrderingFilter)
filter_fields = {
'category__title': ["in",]
}
в models.py
class Category(MPTTModel):
"""Categorizing posts"""
title = models.CharField(max_length=128, verbose_name="Title", unique=True, default=None)
description = models.TextField(verbose_name="Description", null=True, blank=True)
parent = TreeForeignKey('self', on_delete=models.CASCADE, null=True, blank=True, related_name='children')
class MPTTMeta:
order_insertion_by = ['title']
class Product(models.Model):
title = models.CharField(max_length=255)
category = models.ForeignKey(
Category,
on_delete=models.PROTECT,
related_name="products",
verbose_name="Category of a product"
)
На экране у меня есть 2 категории Родитель и Ребенок

на экране, когда я фильтрую по категории Child

на экране, когда я фильтрую по родительской категории и ответ пустой

Как я могу исправить это и получить все товары из подкатегорий через фильтр родительской категории