如何捕获UNIQUE约束失败:auth_user.username错误?

时间:2016-02-19 22:18:44

标签: python django forms username

在我的表单中,只要有人注册了这样的用户名,我就会得到这个。如何防止错误从一个全新的黄页转移到用户并将其作为表单错误引发?

2 个答案:

答案 0 :(得分:0)

嘿,这很简单,只需使用django内置的AuthenticationForm

即可
from django.contrib.auth.forms import AuthenticationForm

form = AuthenticationForm(request.POST)

if form.is_vaild():
   form.save()
else:
   # handle error
   # you can also use form.errors as message

答案 1 :(得分:0)

如果唯一约束抛出IntegrityError:

from django.db import IntegrityError

try:
    user.save()
except IntegrityError as e: 
    if 'UNIQUE constraint' in e.message:
        #do something