Не показывать сериализатор drf поля - PullRequest
0 голосов
/ 14 июля 2020

Есть ли способ, чтобы поле сериализатора не отображалось в ответе? Я знаю такой способ:

extra_kwargs = {
  "field_name": {"write_only": True},
}

Но проблема в том, что кто-то может изменить это поле с помощью запроса PUT. Можем ли мы не показывать поле и не принимать его изменение? ######## Пример: предположим, что у нас есть следующий сериализатор:

class RandomSerializer(serializers.ModelSerializer):
    other = otherSerializer(write_only=True)
    a = serializers.charField(max_length=100, source="other.a")
    class Meta:
        model = Random
        fields = ['other', 'a', ...]
        extra_kwargs = {
            "other": {"write_only": True},
        }

Проблема этого подхода в том, что кто-то может предоставить «другое» в запросе, а я этого не хочу. Другими словами, я хотел бы сделать поле как write_only, так и read_only

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...