最近出现了一项要求,即客户在注册用户时遇到问题。
在填写注册表单时,有填写电子邮件地址的字段。
此处用户的电子邮件地址为“ xyz@abc.education ”....输入其他详细信息并提交表单后,显示“请输入”有效的电子邮件地址“。
电子邮件地址完全有效,但django不允许继续使用。
可能的解决方案:
转到并更新字段以存储Charfield而不是EmailField.But在我的情况下是不可能的。
在django / code / validator.py中,我可以修改正则表达式检查以允许超过6个字符(目前支持{2,6})。但是,更改库代码不是一个好主意。
请建议。
答案 0 :(得分:1)
我会扩展默认的EmailField并更改验证器。这样的事情可能有效(未经测试):
my_validate_email = django.core.validators.EmailValidator(whitelist=['abc.education'])
class MyEmailField(EmailField):
default_validators = [my_validate_email]
相关的源代码是EmailField
和EmailValidator
。