django 事务错误 -- Transaction managed block ended with pending COMMIT/ROLLBACK

本文探讨了在使用Django进行事务处理时遇到的常见错误,并提供了有效的解决方案。
1 Request Method:    GET
2 Request URL:    http://192.168.128.111:8000/×××/××××/
3 Django Version:    1.4.8
4 Exception Type:    TransactionManagementError
5 Exception Value:    
6 Transaction managed block ended with pending COMMIT/ROLLBACK

今天在做事务处理的时候老是出现这个问题,我研究了半天,发现我代码严格按照

try:

  ***

exception:

  ***

else:

  ***

这种格式来写的,为什么还有错呢?

于是各种google,什么注释掉@transaction.commit_manually 看看错误在哪,什么都试了。

直到我找到这篇文章:http://stackoverflow.com/questions/9955321/django-transaction-managed-block-ended-with-pending-commit-rollback

马但啊,原来在返回视图前还有数据库操作。

1         retval = render_to_response('***/***.html',{
2                 'form':form,
3                 'nav_active':'active',
4             },context)
5         transaction.commit()
6         return retval

这样就OK了。

转载于:https://www.cnblogs.com/tk091/p/4145962.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值