Django 惰性机制

惰性机制:Publisher.Book.objects.all()或者.filter()等都只是返回了一个QuerySet(查询结果集对象),它并不会马上执行sql,而是当调用QuerySet的时候才执行sql,为了测试,我们加上 sql 日志。

在 settings.py 文件上添加下面代码

# 在里面添加
LOGGING = {
    ‘version‘: 1,
    ‘disable_existing_loggers‘: False,
    ‘handlers‘: {
        ‘console‘:{
            ‘level‘:‘DEBUG‘,
            ‘class‘:‘logging.StreamHandler‘,
        },
    },
    ‘loggers‘: {
        ‘django.db.backends‘: {
            ‘handlers‘: [‘console‘],
            ‘propagate‘: True,
            ‘level‘:‘DEBUG‘,
        },
}

在views.py写一个函数

from django.shortcuts import render, HttpResponse

from app01 import models

def temp(requset):

obj1 = models.Book.objects.filter(id=1)

return HttpResponse("我是函数temp")

浏览器访问 http://127.0.0.1:8080/temp 结果显示 sql 语句没有执行

将函数进行一些修改

在 views.py 上调用 obj1对象

def temp(requset):

    obj1= models.Book.objects.filter(id=2)
    for obj in obj1:
        print(obj.title)

    return HttpResponse("我是temp函数")

浏览器访问 http://127.0.0.1:8000/temp/ 结果显示 sql 语句已执行

原文地址:https://www.cnblogs.com/love2000/p/11788882.html

时间: 2024-11-04 12:04:00

Django 惰性机制的相关文章

Django——惰性机制

Django惰性机制 所谓惰性机制:Publisher.objects.all()或者.filter()等都只是返回了一个QuerySet(查询结果集对象), 它并不会马上执行sql,而是当调用QuerySet的时候才执行. 了解什么是QuerySet? QuerySet是查询集,就是传到服务器上的url里面的查询内容. Django会对查询返回的结果集QuerySet进行缓存,这是为了提高查询效率. 也就是说,在你创建一个QuerySet对象的时候,Django并不会立即向数据库发出查询命令,

Django中的惰性机制

惰性机制:Publisher.objects.all()或者.filter()等都只是返回了一个QuerySet(查询结果集对象),它并不会马上执行sql,而是当调用QuerySet的时候才执行sql,为了测试,我们加上 sql 日志. 在 settings.py 文件上修改 1 # 在最后添加 2 LOGGING = { 3 'version': 1, 4 'disable_existing_loggers': False, 5 'handlers': { 6 'console':{ 7 'l

django权限机制

1. Django权限机制概述 权限机制能够约束用户行为,控制页面的显示内容,也能使API更加安全和灵活:用好权限机制,能让系统更加强大和健壮.因此,基于Django的开发,理清Django权限机制是非常必要的. 1.1 Django的权限控制 Django用user, group和permission完成了权限机制,这个权限机制是将属于model的某个permission赋予user或group,可以理解为全局 的权限,即如果用户A对数据模型(model)B有可写权限,那么A能修改model

Spring 和 Django 安全机制的比较

做了一年多的python 方面的web开发工作,昨个有个同学问我Django的安全机制,我是一脸的茫然.每天使用公司开发框架的我,对这些东西了解的甚少,俨然成为一个真正的"码农",只知其然而不知其所以然.我要改变,故从网络上,查了下,记下被查,内容如下: 介绍 Spring是Java语言开发的一站式Web框架.包括:SpringMVC,Spring,SpringSecurity,SpringAOP等子框架.Spring在数据库访问层可以整合Hibernate,iBatis等第三方框架.

django 权限机制

1. Django权限机制概述 权限机制能够约束用户行为,控制页面的显示内容,也能使API更加安全和灵活:用好权限机制,能让系统更加强大和健壮.因此,基于Django的开发,理清Django权限机制是非常必要的. 1.1 Django的权限控制 Django用user, group和permission完成了权限机制,这个权限机制是将属于model的某个permission赋予user或group,可以理解为全局的权限,即如果用户A对数据模型(model)B有可写权限,那么A能修改model B

Django权限机制概述

1. Django权限机制概述 权限机制能够约束用户行为,控制页面的显示内容,也能使API更加安全和灵活:用好权限机制,能让系统更加强大和健壮.因此,基于Django的开发,理清Django权限机制是非常必要的. 1.1 Django的权限控制 Django用user, group和permission完成了权限机制,这个权限机制是将属于model的某个permission赋予user或group,可以理解为全局的权限,即如果用户A对数据模型(model)B有可写权限,那么A能修改model B

contenttype组件、Django缓存机制以及跨域请求

1 昨日回顾 版本控制 *** (1)url=127.0.0.1/course/?version=v100000 1 versioning_class=QueryParameterVersioning 'VERSION_PARAM':'version', 'DEFAULT_VERSION':'v2', 'ALLOWED_VERSIONS':['v1','v2'] 2 配置成全局:在setting里:QueryParameterVersioning (2)重要(以后建议用这种):127.0.0.1

Spark惰性机制引起的:Input path does not exist

分析: val textFile = Sc.textFile(“file///usr/local/spark/...”)加载本地文件,必须以“file:///”开头 Spark的惰性机制:执行上面的命令不会马上显示结果 只有遇到行动类型的操作,才会从头到尾执行所有操作,如:textFile.first()// 从文件中加载数据到变量textFile中,并取出第一行文本. 结论:该目录的文件不存在. 避免此类问题:及时使用textFile.first()检验 原文地址:https://www.cn

Django缓存机制

django的缓存 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器的压力. 缓存是将一些常用的数据保存内存或者memcache中,在一定的时间内有人来访问这些数据时,则不再去执行数据库及渲染等操作,而是直接从内存或memcache的缓存中去取得数据,然后返回给用户. https://www.cnblogs.