Files
consumocuidado-server/products/serializers.py
2021-02-18 14:02:12 +01:00

39 lines
1.3 KiB
Python

from rest_framework import serializers
from tagulous.serializers.json import Serializer
from products.models import Product
from companies.serializers import CompanySerializer
from utils.tag_serializers import TagListSerializerField, TaggitSerializer, SingleTagSerializerField, SingleTag, TagList
class ProductSerializer(TaggitSerializer, serializers.ModelSerializer):
tags = TagListSerializerField(required=False)
category = SingleTagSerializerField(required=False) # main tag category
attributes = TagListSerializerField(required=False)
# image = serializers.SerializerMethodField()
class Meta:
model = Product
exclude = ['created', 'updated', 'creator']
class ProductSearchSerializer(TaggitSerializer, serializers.ModelSerializer):
tags = TagListSerializerField(required=False)
category = SingleTagSerializerField(required=False) # main tag category
attributes = TagListSerializerField(required=False)
company = CompanySerializer(read_only=True)
class Meta:
model = Product
exclude = ['created', 'updated', 'creator']
class TagFilterSerializer(TaggitSerializer, serializers.ModelSerializer):
tags = TagListSerializerField(required=False)
class Meta:
model = TagList
fields = '__all__'