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

94 lines
2.3 KiB
Python

"""Main app serializers."""
from rest_framework import serializers
from main import models
class FeatureSerializer(serializers.ModelSerializer):
"""Feature serializer."""
class Meta:
"""Meta class."""
model = models.Feature
fields = (
'id',
'slug',
)
class SiteFeatureSerializer(serializers.ModelSerializer):
id = serializers.IntegerField(source='feature.id')
slug = serializers.CharField(source='feature.slug')
class Meta:
"""Meta class."""
model = models.SiteFeature
fields = ('main',
'id',
'slug')
class SiteSettingsSerializer(serializers.ModelSerializer):
"""Site settings serializer."""
published_features = SiteFeatureSerializer(source='published_sitefeatures',
many=True, allow_null=True)
#todo: remove this
country_code = serializers.CharField(source='subdomain', read_only=True)
class Meta:
"""Meta class."""
model = models.SiteSettings
fields = (
'country_code',
'subdomain',
'pinterest_page_url',
'twitter_page_url',
'facebook_page_url',
'instagram_page_url',
'contact_email',
'config',
'ad_config',
'published_features',
)
# class SiteFeatureSerializer(serializers.ModelSerializer):
# """Site feature serializer."""
#
# class Meta:
# """Meta class."""
#
# model = models.SiteFeature
# fields = (
# 'id',
# 'published',
# 'site_settings',
# 'feature',
# )
class AwardSerializer(serializers.ModelSerializer):
"""Award serializer."""
class Meta:
model = models.Award
fields = [
# 'title',
'award_type',
'vintage_year',
]
class MetaDataContentSerializer(serializers.ModelSerializer):
id = serializers.IntegerField(source='metadata.id', read_only=True,)
label_translated = serializers.CharField(source='metadata.label_translated', read_only=True, allow_null=True)
class Meta:
model = models.MetaDataContent
fields = [
'id',
'label_translated',
]