0

我正在使用 Django-registration 并希望在注册时强制使用唯一的电子邮件,所以我有:

url(r'^register/$', 'registration.views.register',
{'form_class':RegistrationFormUniqueEmail,
    'backend':'registration.backends.default.DefaultBackend' }, name='registration_register'),

但是,这是行不通的。我摆弄了一下,例如在 /registration/forms.py 中将验证代码RegistrationFormUniqueEmail放入

class RegistrationForm(forms.Form):

这确实运行唯一性约束。import ipdb; ipdb.set_trace()我还在单独的方法代码中放置了断点,RegistrationFormUniqueEmail以确保它实际上被调用了。取决于我放置断点的位置,代码在控制台中中断,所以它似乎正在运行,但没有进行验证。

我想要一个不涉及我重新洗牌源中的注册码的修复,即将唯一的电子邮件验证放入主表单。

会发生什么?

4

1 回答 1

0

我最终分叉django-registration并将唯一的电子邮件验证器直接添加到包中的默认注册表单中forms.py。我是在包级别这样做的,因为我无法在其他任何地方成功地对默认表单进行子类化,因此它必须在包中,并且我正在使用 pip 依赖项在 Heroku 上进行部署,因此必须拉取自定义包。

于 2013-06-21T16:09:19.470 回答