首页 > 其他分享 >defer和only 事务(请求,装饰器,局部)

defer和only 事务(请求,装饰器,局部)

时间:2023-11-30 18:44:05浏览次数:28  
标签:defer name objects models 要么 only books 装饰

# defer和only(查询优化相关)
# only保持是book对象,但是只能使用only指定的字段

# books = models.Book.objects.all().only('name')
    # print(books[0].name)
    # print(books[0].price)  # 能出来,

    # books = models.Book.objects.all().only('name')
    #
    # print(books[0].__dict__)
    books = models.Book.objects.all().defer('name','price')
    print(books[0].__dict__)

 

 

# 事物:ACID,事物的隔离级别(搜),锁, 行级锁,表级锁

# djanog orm中使用事物:原子性操作,要么都成功,要么都失败

# 新增一个作者详情,新增一个作者

# 事物的三个粒度
# 1 局部使用

from django.db import transaction
    with transaction.atomic(): # 都在事物中,要么都成功,要么都失败
        author_detail=models.AuthorDetail.objects.create(addr='xxx',phone='123',sex=1)
        # raise Exception('抛了异常')
        author=models.Author.objects.create(name='llqz',age=19,author_detail=author_detail)

 

 

# 2 视图函数装饰器,这一个视图函数都在一个事物中

 # @transaction.atomic
    # def index(request):
    #     return HttpResponse('ok')


    # 3 整个http请求,在事物中,在setting.py中配置
    '''
    DATABASES = {
        'default': {
            ...
            'PORT': 3306,
            'ATOMIC_REQUEST': True,
       
        }
    }

    'ATOMIC_REQUEST': True,
设置为True统一个http请求对应的所有sql都放在一个事务中执行(要么所有都成功,要么所有都失败)。
    
    '''

 

标签:defer,name,objects,models,要么,only,books,装饰
From: https://www.cnblogs.com/97zs/p/17868015.html

相关文章

  • 一些关于python装饰器的理解
    装饰器:给现有的模块增添新的小功能,可以对原函数进行功能扩展,而且还不需要修改原函数的内容,也不需要修改原函数的调用例:已有函数ABC想在其基础上再加上一个小功能Xdefdeco(A): defwrapper(*args,**kwargs): res=A(*args,**kwargs) returnres......
  • 2-4 函数高级(嵌套、闭包、装饰器)
    ​ 概要:函数的嵌套闭包装饰器  1.函数嵌套Python中以函数为作用域,在作用域中定义的相关数据只能被当前作用域或子作用域使用。NAME="ayden"print(NAME)​deffunc():  print(NAME)​func() 1.1函数在作用域中其实,函数也是定义在作用域中......
  • flask一些特殊装饰器
    直接上代码了"""#@Time:2023/11/26#@Author:bgm#@File:mange.py"""fromflaskimportFlask,abort,request,g,jsonifyapp=Flask(__name__)#@app.before_first_request#3.0版本之后已经弃用#-------------------------......
  • 装饰模式
    [实验任务一]:手机功能的升级用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而JarPhone除了声音还能振动;更高级的手机(ComplexPhone)除了声音、振动外,还有灯光闪烁提示。1.提交类图;2.提交源代码Changer.javapackageornament;pub......
  • Java Runtime (class file version 61.0), this version of the Java Runtime only re
    转: https://blog.csdn.net/qq_26898033/article/details/1289155001错误信息org/springframework/boot/maven/BuildInfoMojohasbeencopiledbyamorerecentversionoftheJavaRuntime(classfileversion61.0),thisversionoftheJavaRuntimeonlyrecogniz......
  • ES插入报错 索引只读:blocked by: [FORBIDDEN/12/index read-only / allow delete (ap
     ES插入报错:reason:ElasticsearchException[Elasticsearchexception[type=cluster_block_exception,reason=blockedby:[FORBIDDEN/12/indexread-only/allowdelete(api)];]]   这种大多都是因为磁盘空间不足了超过设置的阈值,一般80%所以索引变成只读了,要把空......
  • vue2在线预览文档——Onlyoffice
    以下三个链接,结合看:Java+vue3:springbootvue初步集成onlyoffice_vue集成onlyoffice_Mr-Wanter的博客-CSDN博客使用docker+vue2:vue2集成Onlyoffice_vue集成onlyoffice-CSDN博客Onlyoffice+vue3官网例子:https://api.onlyoffice.com/editors/vue1.安装依赖安装完依赖就......
  • wsl中操作文件是提示 Read-only file system报错
    1.查看挂载的硬盘mount|grepext42.挂载硬盘sudoe2fsck/dev/sdc-y3. 在powershell中关闭wsl,wsl--shutdown4.重启之后即可 ......
  • timeout 装饰器
    importfunctoolsimportsignaldeftimeout(sec):"""timeoutdecorator:paramsec:functionraiseTimeoutErrorafter?seconds"""defdecorator(func):@functools.wraps(func)defwrapped_......
  • 面试官:@Transactional(readOnly=true) 有什么用?还有谁不会?!
    原文翻译自:https://medium.com今天,我想谈谈Spring提供的@Transactional(readOnly=true)。之所以聊这个是因为我公司项目的代码里有很多@Transactional(readOnly=true),用过的同学都说@Transactional(readOnly=true)提高了性能。先思考以下几点:@Transactional(readOnly......