其中任何一个步骤失败都不行,
失败则回滚

在一对一的模型下
例如,用户基本信息和用户详细信息
必须两个一起添加用户信息才算成功

通过位置参数来实现

手动控制事务

def page_trans_hand(request):
#手动控制事务
user1 = WeiboUser.objects.get(pk=4)
# 发布微博
try:
#放弃自动提交
transaction.set_autocommit(False)
weibo = Weibo.objects.create(user=user1, content='事务事务2hand')
# 发布评论
comment = Commont.objects.create(user=5,
content="好玩的事务2hand",
weibo=weibo)
print('weibo', weibo.pk, ' comments', comment.id)
transaction.commit()#手动提交事务
except:
# #不使用事务的时候手动删除数据
# weibo.delete()
#手动控制事务,实现回滚
transaction.rollback()
return HttpResponse('ssss')

最新文章

  1. iOS 地图定位及大头针的基本使用
  2. 线程本地存储TLS(Thread Local Storage)的原理和实现——分类和原理
  3. 写好的mapreduce程序,编译,打包,得到最后的jar包! 验证jar包 ! 整体流程
  4. Mysql支持中文全文检索的插件mysqlcft-应用中的问题
  5. Cocos2d-x游戏的场景结构布局
  6. Visual Studio 单元测试之五---数据库测试
  7. 【算法系列学习】状压dp [kuangbin带你飞]专题十二 基础DP1 D - Doing Homework
  8. js中的call与apply随笔
  9. JS与CSS阻止元素被选中及清除选中的方法总结
  10. 深入浅出WPF文摘
  11. [转]JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐
  12. linux查看操作系统的版本
  13. [Jmeter系列]Jmeter源码编译步骤(转)
  14. null与undefined
  15. 给乱序的链表排序 · Sort List, 链表重排reorder list LoLn...
  16. 《ASP.NET MVC 5 破境之道》:第一境 ASP.Net MVC5项目初探 — 第一节:运行第一个MVC5项目
  17. object references an unsaved transient instance - save the transient instance before flushing: com.jspxcms.core.domain.ScTeam
  18. 一个JavaScript日期格式化扩展函数
  19. jquery区分苹果浏览器和安卓浏览器
  20. CI框架源码学习笔记3——Log.php

热门文章

  1. Java:阻塞队列
  2. 第2次 Beta Scrum Meeting
  3. UltraSoft - Beta - Scrum Meeting 4
  4. AFO记
  5. hdu 5185 Equation(分析+DP)
  6. ReentrantLock & AQS
  7. docker 简单总结
  8. Fiddler抓包工具简介:(二)下载安装及配置证书和代理
  9. 远程连接linux | Xshell和Xftp下载安装
  10. Python 深拷贝和浅拷贝的区别