0

我知道这很简单,我尝试过广泛搜索,但没有任何效果:(

当我在我的 forms.py 中尝试这个时:

class RegistrationForm(forms.Form):
    email = forms.EmailField(unique = True, error_messages = {'unique':'Duplicate Error!')
    password = forms.CharField( widget = forms.PasswordInput(render_value = False), label = "Password")

我收到一条错误消息: init() got an unexpected keyword argument: unique

我看到人们让它很容易工作,但显然我错过了一些东西。如何使用上面给出的表单和查看代码为用户注册添加自定义错误消息?我想在用户名字段旁边显示错误消息,就像该字段留空时显示的错误消息一样。

谢谢你。

4

1 回答 1

2

使用表单上的 clean 方法来验证这一点:

from django.contrib.auth.models import User

class RegistrationForm(forms.Form):
    email = forms.EmailField()
    password = forms.CharField( widget = forms.PasswordInput(render_value = False),label = "Password")

    def clean(self):

        if User.objects.filter(email=self.cleaned_data['email']).exists():
            msg = _(u'Duplicate Error!')
            self._errors['email'] = ErrorList([msg])
            del self.cleaned_data['email']
        return self.cleaned_data
于 2013-02-28T21:06:08.970 回答