update product serializer category adn detiaal category resposne

This commit is contained in:
Parsa Nazer
2025-02-21 19:23:25 +03:30
parent 90f0f9ea2e
commit 85f14a71c2
+19 -17
View File
@@ -14,6 +14,7 @@ class DetailSerializer(serializers.ModelSerializer):
class ProductDetailSerializer(serializers.ModelSerializer):
detail = DetailSerializer(many=True, read_only=True)
detail_category = serializers.StringRelatedField()
class Meta:
model = ProductDetailModel
fields = "__all__"
@@ -67,11 +68,29 @@ class ProductVariantSerialzier(serializers.ModelSerializer):
class SubCategorySerializer(serializers.ModelSerializer):
product_count = serializers.SerializerMethodField()
parent = serializers.SerializerMethodField()
class Meta:
model = SubCategoryModel
fields = ['id', 'name', 'slug','icon', 'meta_title', 'meta_description', 'product_count', 'show', 'parent', 'image']
def get_product_count(self, obj):
return obj.products.count()
def get_parent(self, obj):
return obj.parent.name
class MainCategorySerializer(serializers.ModelSerializer):
subcategorys = SubCategorySerializer(many=True)
class Meta:
model = MainCategoryModel
fields = ['id', 'name', 'slug', 'icon', 'meta_title', 'meta_description', 'subcategorys']
class DynamicProductSerializer(serializers.ModelSerializer):
variants = serializers.SerializerMethodField()
# variants_colors = serializers.SerializerMethodField()
category = SubCategorySerializer(read_only=True)
is_new = serializers.SerializerMethodField()
related_products = serializers.SerializerMethodField()
@@ -130,20 +149,3 @@ class CommentSerializer(serializers.ModelSerializer):
exclude = ('review_status', )
read_only_fields = ('review_status', 'product', 'user')
class SubCategorySerializer(serializers.ModelSerializer):
product_count = serializers.SerializerMethodField()
parent = serializers.SerializerMethodField()
class Meta:
model = SubCategoryModel
fields = ['id', 'name', 'slug','icon', 'meta_title', 'meta_description', 'product_count', 'show', 'parent', 'image']
def get_product_count(self, obj):
return obj.products.count()
def get_parent(self, obj):
return obj.parent.name
class MainCategorySerializer(serializers.ModelSerializer):
subcategorys = SubCategorySerializer(many=True)
class Meta:
model = MainCategoryModel
fields = ['id', 'name', 'slug', 'icon', 'meta_title', 'meta_description', 'subcategorys']