diff --git a/engine/core/models.py b/engine/core/models.py index 0add9262..690f7014 100644 --- a/engine/core/models.py +++ b/engine/core/models.py @@ -456,8 +456,8 @@ class Category(NiceModel, MPTTModel): @cached_property def brands(self) -> QuerySet["Brand"]: return Brand.objects.filter( - products__category=self, - products__is_active=True, + product__category=self, + product__is_active=True, is_active=True, ).distinct() diff --git a/engine/core/serializers/detail.py b/engine/core/serializers/detail.py index 535704ac..14c97487 100644 --- a/engine/core/serializers/detail.py +++ b/engine/core/serializers/detail.py @@ -62,6 +62,8 @@ class CategoryDetailSerializer(ModelSerializer): children = SerializerMethodField() filterable_attributes = SerializerMethodField() brands = BrandSimpleSerializer(many=True, read_only=True) + min_price = SerializerMethodField() + max_price = SerializerMethodField() class Meta: model = Category @@ -98,6 +100,12 @@ class CategoryDetailSerializer(ModelSerializer): return list(serializer.data) return [] + def get_min_price(self, obj: Category): + return obj.min_price + + def get_max_price(self, obj: Category): + return obj.max_price + class BrandDetailSerializer(ModelSerializer): categories = CategorySimpleSerializer(many=True)