gpt4 book ai didi

python - django - 当前事务被中止,命令被忽略直到事务 block 结束

转载 作者:太空宇宙 更新时间:2023-11-03 18:52:25 25 4
gpt4 key购买 nike

try: 
user = User.objects.create_user(_username, _email, pwd)
except IntegrityError, e:
fail = e.message
return render_to_response('register.html',{'reg_fail':fail},context_instance=RequestContext(request))

我有这段代码,一旦我捕获 IntegrityError,我就会收到此错误:当前事务被中止,命令被忽略直到事务 block 结束

这是为什么呢?如果我删除 context_instance 部分,那么我将再次获得该页面,但没有任何媒体访问权限。我被困住了,我只想注册一个用户,或者如果出现完整性错误,则渲染到带有错误消息的注册页面。

顺便说一句:我正在使用 django1.4 和 postgresql。 User 是 django 的授权用户

最佳答案

使用user_create启动事务,再次执行此操作会导致未提交事务的错误。您必须在user_create之后提交(结束)事务,如下所示:

try: 
user = User.objects.create_user(_username, _email, pwd)
user.full_clean()
user.save()
except IntegrityError, e:
fail = e.message
return render_to_response('register.html',{'reg_fail':fail},context_instance=RequestContext(request))

关于python - django - 当前事务被中止,命令被忽略直到事务 block 结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18036530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com