2014-01-17 1 views
1

Как я могу поддерживать Unicode в адресной части адреса электронной почты в Django? Джанго 1.5 отклоняет их сходу:Как получить поддержку для rfc6532 - unicode в адресной части адреса электронной почты - в Django 1.5?

>>> from django import forms 
>>> forms.EmailField().clean('[email protected]') 
u'[email protected]' 
>>> forms.EmailField().clean('◔@obviously.com') 
ValidationError: [u'Enter a valid email address.'] 

документ в https://tools.ietf.org/html/rfc6532 направляет переход от 7 битного ASCII для адреса электронной почты в формате UTF-8. Как я могу играть в Django?

ответ

0

Вы можете определить свой собственный подкласс EmailValidator, и вы можете переопределить регулярное выражение для user_regex. Это регулярное выражение используется для проверки пользовательской части адреса электронной почты. См. Код django.core.validators.

Затем вы можете указать этот валидатор для своего EmailField, чтобы убедиться, что используется другой валидатор.