Django PasswordResetForm在扩展时无法正常工作

时间:2015-08-04 13:44:44

标签: django django-forms django-authentication

我想对默认

进行一些更改

django.contrib.auth.forms.PasswordResetForm

我做了以下事情:

class CustomPasswordResetForm(PasswordResetForm):
    def is_valid(self):
        ret = forms.Form.is_valid(self)
        for f in self.errors:
            self.fields[f].widget.attrs.update({'class': 'invalid'})
        return ret
    def clean_email(self):
        email = self.cleaned_data.get('email')
        if not User.objects.filter(email=email).exists():
            raise forms.ValidationError('כתובת אימייל זאת לא קיימת במערכת!')
没有什么可复杂的,只是为无效字段添加了一个类,如果电子邮件不存在则添加错误(不确定为什么默认情况下不会发生这种情况)

我还在urls.py中定义了新表单

url(r'^password_reset/$', auth_views.password_reset,{'password_reset_form': CustomPasswordResetForm,}, name='password_reset'),

我所覆盖的两个功能都按预期工作,但重置密码表单不再有效,我没有收到电子邮件,即使表单没有验证错误到/ password_reset / done /

0 个答案:

没有答案
相关问题