Я хочу настроить поле сериализатора, как я могу это сделать? - PullRequest
1 голос
/ 06 марта 2020

Я использую переводы моделей для Django rest framework и сейчас у меня в базе данных 3 поля

title_en
title_ru
title_ro

и в моем сериализаторе у меня fields: ("title_en, title_ro, title_ru"). Но я хочу, чтобы в моем ответе было что-то вроде

data: {
   title: {
      ro: 'something here',
      ru: 'something here',
      en: 'something here'
   }
}

, как мне этого добиться? Кто-нибудь может мне помочь?

1 Ответ

2 голосов
/ 06 марта 2020

Вы можете использовать SerializerMethodField

class YourSerializer(serializers.ModelSerializer):
    data = serializers.SerializerMethodField()

    class Meta:
        model = YourModel
        fields = ['data']

    def get_data(self,obj):
        return {'title':{'ro':obj.title_ro,'ru':obj.title_ru,'en':obj.title_en}}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...