如何在Django下的电子邮件地址的地址部分支持Unicode? Django 1.5完全拒绝这些:
>>> from django import forms
>>> forms.EmailField().clean('pie@obviously.com')
u'pie@obviously.com'
>>> forms.EmailField().clean('◔@obviously.com')
ValidationError: [u'Enter a valid email address.']
https://tools.ietf.org/html/rfc6532处的文档正在指导从电子邮件地址的7位ASCII转换为utf-8。我怎样才能让Django一起玩?
答案 0 :(得分:1)
您可以定义自己的EmailValidator
子类,并可以覆盖user_regex
的正则表达式。该正则表达式用于验证电子邮件地址的用户部分。有关代码,请参阅django.core.validators
。
然后,您可以为EmailField
指定验证程序,以确保使用不同的验证程序。