#Django事务#

事务实现方式
1:基于装饰器实现

@transaction.atomic
def my_view(request):
    #处理操作
    #操作数据1
    #操作数据2

当HTTP相应码是500,事务回滚

2:使用with语句
  from django.db import transaction


  def my_view(request):
    with transaction.atomic()
        #处理操作
        #操作数据1
        #操作数据2

3:手动处理
  from django.db import connection 
  connection.set_autocommit(False)
    try:
        #处理操作
        #操作数据1
        #操作数据2
        connection.commit()
    except Exception as e :
        #print("errorrrrrrrr",str(e))
        connection.rollback()
    finally:
        connection.set_autocommit(True)

4:全局事务配置文件方式
 DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'testdb', 
        'USER': 'root',  
        'PASSWORD': '123', 
        'HOST': '127.0.0.1',     
        'PORT': 3306,  
        'ATOMIC_REQUESTS': True  # 全局开启事务,和http请求的整个过程绑定在一起
    }
}

它是这样工作的:在调用视图方法前,Django 先生成一个事务。如果响应能正常生成,Django 会提交该事务。而如果视图出现异常,Django 则会回滚该事务。
如果你全局开启了事务,你仍然可以使用 non_atomic_requests 装饰器让某些视图方法不受事务控制,但需要注意的是,该装饰器
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/199030.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二维码智慧门牌管理系统升级:强化信息安全的防伪技术

文章目录 前言一、解决方案概览二、具体措施 前言 随着二维码智慧门牌管理系统在城市管理、企业形象展示和商铺门店等领域的广泛应用,信息安全问题愈发凸显。如何保障二维码门牌信息的安全性成为当前迫切需要解决的难题。 一、解决方案概览 专码专用:每…

尚硅谷hadoop3.x课程部分资料文件下载,jdk,hadoopjar包

最近在学hadoop时候,尚硅谷的资料太多,百度云要会员才能下载完,然后到网上找发现好像没有jdk与hadoop包一起分享的。 jdk文件百度云下载: 链接:https://pan.baidu.com/s/1MCiGRzOZY8rAFpRJwA3tdw 提取码:…

奔三程序员的迷茫与思考

现状 我是97年的,今年26了。刚毕业的时候,在网上看到大龄程序员对于未来的忧虑,总是觉得离自己很遥远。一腔热血,心中充满了对于未来的憧憬,觉得等自己年龄大了,一定不会有这些烦恼。那些会产生大龄程序员…

【SQL 基础教程】w3school-SQL-基础知识-总结笔记

SQL-基础-笔记 一、简介 1:什么是 SQL? SQL 是用于访问和处理数据库的标准的计算机语言。 SQL 指结构化查询语言 SQL 使我们有能力访问数据库 SQL 是一种 ANSI 的标准计算机语言 2:SQL 能做什么? SQL 可在数据库中插入新的记录、删…

xxl-job安装部署

官方地址中文版:http://www.xuxueli.com/xxl-job githuab源码: https://github.com/xuxueli/xxl-job/releases 码云地址:https://gitee.com/xuxueli0323/xxl-job XXL开源社区:分布式任务调度平台XXL-JOB 配置部署“调度中心” …

谢宁老师受邀在浙商企业家研习班中讲授华为战略规划SP实践(业务领先模型BLM)

随着全球经济持续的发展与变革,企业家们正面临着前所未有的挑战和机遇。如何在不断变化的市场环境中保持稳健发展,如何进行高效的投资,是众多企业家必须深思的重要问题。 为了协助企业家们更好地应对这些挑战,近日,在…

python超详细基础文件操作【建议收藏】

文章目录 前言1 文件操作1.1 文件打开与关闭1.1.1 打开文件1.1.2 关闭文件 1.2 访问模式及说明 2 文件读写2.1 写数据(write)2.2 读数据(read)2.3 读数据(readlines)2.3 读数据(readline&#x…

配置Jira安全管理员会话

JIRA 要求用户必须通过一个安全管理会话使用 JIRA 管理屏幕,从而保护对其管理功能的访问。(这也称为 websudo。)当 JIRA 管理员(已登录到 JIRA)尝试访问管理功能时,系统将提示他们再次登录。这将使管理员登…

前端模拟新闻列表ajax请求 mocky

效果图&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title> </head><style>ul {display: flex;flex-wrap: wrap;justify-content: space-between;}ul::after{content: ;width: 30%;}a…

数据结构——链表题目

文章目录 JZ25 合并两个排序的链表&#xff08;简单&#xff09;NC22 合并两个有序的数组&#xff08;简单&#xff09;NC3 链表中环的入口节点&#xff08;中等&#xff09;NC50 链表中的节点每k个一组翻转&#xff08;中等&#xff09;NC53 删除链表的倒数第n个节点(中等) JZ…

独立开发者都使用了哪些技术栈?

目录 一、前言 架构展示&#xff1a; 技术栈展示&#xff1a; 二、JNPF-JAVA-Cloud微服务 1.后端技术栈 2. 前端技术栈 Vue3技术栈 3. 数据库支持 一、前言 像独立开发者这类人群&#xff0c;也可以把他们理解为个人开发者/自由职业者。有一组数据显示&#xff0c;在美国&#…

冰 蝴 蝶

“冰蝴蝶”是一种自然景观&#xff0c;出现在每年的12月至次年2月间。在温度、湿度、风力、风向合适时&#xff0c;在山野间的枯草或灌木丛上会结出如“蝴蝶”一样的纤薄冰片&#xff0c;因此被称为“冰蝴蝶”。 受持续降温影响&#xff0c;12月3日&#xff0c;在山西闻喜县裴…

python实现FINS协议的UDP服务端

python实现FINS协议的UDP服务端是一件稍微麻烦点的事情。它不像modbusTCP那样&#xff0c;可以使用现成的pymodbus模块去实现。但是&#xff0c;我们可以根据协议帧进行组包&#xff0c;自己去实现帧的格式&#xff0c;而这一切可以基于socket模块。本文基于原先 FINS协议的TCP…

处理k8s中创建ingress失败

创建ingress&#xff1a; 如果在创建过程中出错了&#xff1a; 处理方法就是&#xff1a; kubectl get ValidatingWebhookConfiguration kubectl delete -A ValidatingWebhookConfiguration ingress-nginx-admission 然后再次创建&#xff0c;发现可以&#xff1a;

spdlog 简介与基础示例

0. 概况 0.1 源码搭建环境 源码网址&#xff1a; GitHub - gabime/spdlog: Fast C logging library. 可以只是用头文件&#xff0c;也可以先编译后使用&#xff1b;后面的示例都是直接使用头文件的方式。 编译方法&#xff1a; $ git clone https://github.com/gabime/spd…

推荐5个节省90%精力的GitHub工具库

下面五个GitHub工具库可节约你大部分时间&#xff0c;提升效率&#xff1a; 1、Trigger.dev 如果您有长时间运行的作业&#xff0c;请在应用中实现Trigger。 使用 API 集成、Webhooks、调度和延迟等功能直接在代码库中创建长时间运行的作业。 例如&#xff0c; 当用户升级他们…

vscode创建python虚拟环境

一、创建虚拟环境 python -m venv vsvenv 二、激活虚拟环境 cd .\myvenv\Scripts.\Activate.ps1 如果出现下图所示&#xff1a; 1、使用管理员运行PowerShell 2、输入命令&#xff1a;Get-ExecutionPolicy 3、输入命令&#xff1a;Set-ExecutionPolicy RemoteSigned&…

嵌入式设备里,SOC与MCU的区别是什么?

今日话题&#xff0c;嵌入式设备里&#xff0c;SOC与MCU的区别是什么?MCU与SOC有着明显的区别。MCU是嵌入式微控制器&#xff0c;而SOC则是片上系统。虽然这两者看似只有一个"嵌入式系统"的区别&#xff0c;但实际上在软件和硬件方面存在显著差异。首先&#xff0c;…

探索医学影像:如何通过ROI灰度直方图和ROI区域方格图揭示隐秘细节?

一、引言 医学影像是现代医学诊断的重要手段&#xff0c;其中nrrd文件格式作为一种常见的医学影像数据存储方式&#xff0c;被广泛应用于各种医学影像设备和软件中。这种文件格式具有丰富的元数据信息&#xff0c;可以精确记录影像的空间位置、方向和尺度等信息&#xff0c;对于…

CentOS7安装最新版本git

CentOS7上的git是1.8.3.1&#xff0c;比较老&#xff0c;使用体验不好。下载源码来升级一下。 sudo yum -y install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel sudo yum -y iinstall asciidoc xmlto docbook2X sudo yum -y in…