如何在Django中捕获“唯一约束失败” 404 [英] how do catch A 'UNIQUE constraint failed' 404 in django
本文介绍了如何在Django中捕获“唯一约束失败” 404的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在以下代码中特别捕获到UNIQUE约束失败404,我知道我必须在(此处?)部分添加一些内容
How do I specifically catch a UNIQUE constraint failed 404 in the following code, I know I have to add something in the ( here? ) section
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:
这就是您所需要的。
编辑 for @mbrochh:
EDITED for @mbrochh:
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失败
的可能性很大。
Yes, you can be more precise but in question case UNIQUE failed
is highly likely.
这篇关于如何在Django中捕获“唯一约束失败” 404的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文