Проверка (Django Rest Framework) полей сериализатора на основе запроса - PullRequest
0 голосов
/ 22 мая 2019

Я пытаюсь проверить сериализатор DRF CharField на основе объекта запроса. Предоставленное значение должно быть проверено на уникальность по отношению к другим значениям базы данных, которые фильтруются на основе запроса.

Я попытался установить метод to_representation, но он также работает при получении данных.

1 Ответ

0 голосов
/ 22 мая 2019

Вы говорите о чем-то подобном?

class FooSerializer(serializers.Serializer):
    bar = serializers.CharField(max_length=100)
    filter1 = serializers.CharField(max_length=100)
    filter2 = serializers.CharField(max_length=100)

    def validate(self, data):
        print('bar value:', data.get('bar'))
        print('filter1 value:', data.get('filter1'))
        print('filter2 value:', data.get('filter2'))
        # Put your conditions and queries here and raise serializers.ValidationError() if they don't match
        return data
serializer = FooSerializer(data=request.data)
serializer.is_valid(raise_exception=True)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...