Можно ли изменить встроенный валидатор Messages в Django Models
Когда я указываю неправильный формат email-id, он должен выдавать другое сообщение об ошибке, а не Введите действительный адрес электронной почты
models.py
class Publisher(models.Model):
email=models.EmailField(blank=True,null=True)
serializer.py
class PublisherSerializer(serializers.ModelSerializer):
class Meta:
model = Publisher
fields = '__all__'
models.EmailField
имеет validators.validate_email
в качестве валидатора по умолчанию, а сообщение об ошибке по умолчанию "Enter a valid email address."
.
Вы не можете легко переопределить default_validators
, поэтому вам нужно использовать обычное поле CharField с собственным валидатором.
email = models.CharField(
max_length=254, # same as EmailField
blank=True,
null=True,
validators=[
EmailValidator(message="very bad email :("), # Custom message here.
],
)