【发布时间】:2012-09-03 15:26:05
【问题描述】:
我正在使用 Django 1.4 和django-registration开发一个网站
我希望允许用户使用任意 Unicode 字符创建他们的用户名。目前,如果有人尝试使用非拉丁字符进行注册,他将看到一条错误消息。负责拒绝这种非ASCII用户名的代码在UserCreationForm和UserChangeForm,见here:
username = forms.RegexField(
label=_("Username"), max_length=30, regex=r"^[\w.@+-]+$",
help_text = _("Required. 30 characters or fewer. Letters, digits and "
"@/./+/-/_ only."),
error_messages = {
'invalid': _("This value may contain only letters, numbers and "
"@/./+/-/_ characters.")})
现在,我想改变它。我已经看到一些建议我应该创建自己的 UserCreationForm,并且创建具有一些行为改变的派生类似乎很容易。
我不明白的一点是:如何让django-registration使用我自定义的UserCreationForm和UserChangeForm?显然,如果可能的话,我想避免修改django-registration 的来源。
【问题讨论】:
标签: python django registration django-registration