AttributeError: Получена ошибка AttributeError при попытке получить значение для поля `password2` на сериализаторе `RegisterSerializer`
Оригинальный текст исключения был: объект 'CustomUser' не имеет атрибута 'password2'.
Я пытаюсь создать сериализатор для создания пользователей, но эта ошибка появляется, когда я пытаюсь создать модель. Разве мне не разрешено иметь поля сериализатора, которых нет у модели?
class RegisterSerializer(serializers.Serializer):
email = serializers.EmailField()
username = serializers.CharField(max_length=150)
password = serializers.CharField(max_length=128)
password2 = serializers.CharField(max_length=128)
profile_img = serializers.ImageField()
def create(self, validated_data):
email = validated_data.get('email')
username = validated_data.get('username')
password = validated_data.get('password')
profile_img = validated_data.get('profile_img')
return CustomUser(email=email, username=username, password=password, profile_picture=profile_img)
def update(self, instance, validated_data):
instance.email = validated_data.get('email', instance.email)
instance.username = validated_data.get('username', instance.username)
instance.password = validated_data.get('password', instance.password)
instance.profile_img = validated_data.get('profile_img', instance.profile_img)
return instance
Задайте поля password и password2 в write_only путем добавления write_only=True
password = serializers.CharField(max_length=128, write_only=True)
password2 = serializers.CharField(max_length=128, write_only=True)