В моем ModelSerializer я хочу добавить обязательное поле re_password
.
. Я хочу использовать его при создании модели пользователя, чтобы проверить, равно ли re_password
поле password
.
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
re_password = serializers.CharField(allow_blank=False, write_only=True)
fields = ('email','password')
def validate_password(self, password):
password, re_password = itemgetter('password', 're_password')(self.initial_data)
if not password == re_password:
raise serializers.ValidationError('Passwords must be the same.')
Моя проблема в том, что когда я добавляю re_password
к полям, я получаю ошибку:
Field name `re_password` is not valid for model `User`.
(что очевидно в данном случае)
Но если нет, сериализатор не вижу моего дополнительного поля.
Моя цель - получить следующую ошибку, когда в запросе POST нет поля re_password
:
"re_password": [
"This field is required."
]
Я знаю, что могу написать код, чтобы проверить это, но, может быть, есть способ для сериализатора сделать это?