如何在下面的代码中具体捕获失败的唯一约束404,我知道我必须在(此处?)部分
try:
q = AnswerModel(user=user, yes_question=question_model)
q.save()
except ( here? ):
return HttpResponseRedirect('/user/already_exists')
如何在下面的代码中具体捕获失败的唯一约束404,我知道我必须在(此处?)部分
try:
q = AnswerModel(user=user, yes_question=question_model)
q.save()
except ( here? ):
return HttpResponseRedirect('/user/already_exists')
from django.db import IntegrityError
except IntegrityError:
这就是你需要的.
对于@mbrochh:EDITED
from django.db import IntegrityError
except IntegrityError as e:
if 'unique constraint' in e.message: # or e.args[0] from Django 1.10
#do something
是的,你可以说得更精确些,但问题是UNIQUE failed
的可能性很大.