Как изменить сообщение об ошибке EmailValidator

models.py

class User(AbstractBaseUser):
  email = models.EmailField(
      verbose_name='Email',
      max_length=255,
      unique=True,
      error_messages={'msg':"Enter a valid Email Address"},
      )

  name = models.CharField(max_length=200)
  phone_number= models.CharField(max_length=200, blank=True)
  address= models.CharField(max_length=200, blank=True)
  tc = models.BooleanField()
  is_active = models.BooleanField(default=True)
  is_admin = models.BooleanField(default=False)
  created_at = models.DateTimeField(auto_now_add=True)
  updated_at = models.DateTimeField(auto_now=True)

  objects = UserManager()

  USERNAME_FIELD = 'email'
  REQUIRED_FIELDS = ['name', 'tc']

serializer.py

class UserRegistrationSerializer(serializers.ModelSerializer):
  
  # We are writing this becoz we need confirm password field in our Registratin Request
  password2 = serializers.CharField(style={'input_type':'password'}, write_only=True)
  class Meta:
    model = User
    fields=['email', 'name' ,'phone_number', 'address','password', 'password2','tc' ]
    extra_kwargs={
      'password':{'write_only':True},
      
    }
   
  def validate(self, attrs):
    password = attrs.get('password')
    password2 = attrs.get('password2')
    if password != password2:
      raise serializers.ValidationError("Password and Confirm Password doesn't match")
    return attrs

  def create(self, validate_data):
    return User.objects.create_user(**validate_data)

Вывод, который я получаю, когда ввожу неверный email id

{
    "email": [
        "Enter a valid email address."
    ]
}

Ожидаемый результат

{
    "msg": "Enter a valid email address."
    
}

Я использовал error_message в моделях, чтобы получить нужный вывод, а также использовал EmailValidator(message=""), но ничего не работает. Я пытался использовать def clean_email в serializers.py, но это тоже не сработало. пожалуйста, помогите

Вернуться на верх