gault-millau/apps/establishment/serializers.py
Dmitriy Kuzmenko 9a7052026b add metadata
2019-08-29 14:51:55 +03:00

60 lines
1.7 KiB
Python

"""Establishment serializers."""
from rest_framework import serializers
from establishment import models
from location.serializers import AddressSerializer
from main.serializers import MetaDataContentSerializer
class EstablishmentTypeSerializer(serializers.ModelSerializer):
"""Serializer for EstablishmentType model."""
name_translated = serializers.CharField(allow_null=True)
class Meta:
"""Meta class."""
model = models.EstablishmentType
fields = ('id', 'name_translated')
class EstablishmentSubTypeSerializer(serializers.ModelSerializer):
"""Serializer for EstablishmentSubType models."""
name_translated = serializers.CharField(allow_null=True)
class Meta:
"""Meta class."""
model = models.EstablishmentSubType
fields = ('id', 'name_translated')
class EstablishmentSerializer(serializers.ModelSerializer):
"""Serializer for Establishment model."""
name_translated = serializers.CharField(allow_null=True)
description_translated = serializers.CharField(allow_null=True)
type = EstablishmentTypeSerializer(source='establishment_type')
subtypes = EstablishmentSubTypeSerializer(many=True)
address = AddressSerializer()
tags = MetaDataContentSerializer(many=True)
class Meta:
"""Meta class."""
model = models.Establishment
fields = (
'id',
'name_translated',
'description_translated',
'public_mark',
'price_level',
'toque_number',
'price_level',
'type',
'subtypes',
'image',
'address',
'tags',
)