from rest_framework import serializers from news import models from location.serializers import AddressSerializer from location.models import Address class NewsSerializer(serializers.ModelSerializer): """News serializer.""" address = AddressSerializer() # Localized fields title_trans = serializers.CharField() subtitle_trans = serializers.CharField() description_trans = serializers.CharField() class Meta: model = models.News fields = [ 'id', 'news_type', 'start', 'end', 'playlist', 'address', 'title_trans', 'subtitle_trans', 'description_trans', ] class NewsCreateUpdateSerializer(NewsSerializer): """News update serializer.""" title = serializers.JSONField() subtitle = serializers.JSONField() description = serializers.JSONField() news_type = serializers.PrimaryKeyRelatedField( queryset=models.NewsType.objects.all(), write_only=True) address = serializers.PrimaryKeyRelatedField( queryset=Address.objects.all(), write_only=True) class Meta: model = models.News read_only_fields = [ 'id' ] fields = [ 'id', 'news_type', 'title', 'subtitle', 'description', 'start', 'end', 'playlist', 'address' ]