当前位置: 首页 > news >正文

余姚网站推广策划案/做网站的公司哪家最好

余姚网站推广策划案,做网站的公司哪家最好,做网站维护的人叫啥,电子商务b2c模式嗨喽,大家好呀~这里是爱看美女的茜茜呐 我们在使用Django的models查询数据库时,可以看到有这种写法: form app.models import XXX query XXX.objects.all() query query.filter(name123, age456).filter(salary999)在这种写法里面&#xf…

嗨喽,大家好呀~这里是爱看美女的茜茜呐

我们在使用Django的models查询数据库时,可以看到有这种写法:

form app.models import XXX
query = XXX.objects.all()
query = query.filter(name=123, age=456).filter(salary=999)

在这种写法里面,query对象有一个filter方法,这个方法的返回数据还可以继续调用filter方法,可以这样无限制地调用下去。


👇 👇 👇 更多精彩机密、教程,尽在下方,赶紧点击了解吧~

python源码、视频教程、插件安装教程、资料我都准备好了,直接在文末名片自取就可


这种写法是怎么实现的呢?

如果我们直接写一个类的方法,看看能不能这样调用:

class Query:def filter(self):passquery = Query()
query.filter().filter()

直接对query.filter()返回的结果再调用一次filter,就会导致报错了。

这是因为在没有显式写return语句的时候,方法会返回None,而None对象是没有所谓的filter方法的。

那么什么东西有filter方法呢?显然我们的query对象有filter方法。

那么如何让这个方法返回自身这个对象呢?

这个时候,我们就要看看我们在定义类方法的时候,总会写的的第一个参数self了。

几乎每个类方法里面都会有它。

大家只知道在类里面调用类方法的时候可以用self.xxx(),在调用类属性的时候可以用self.yy,

那么有没有思考过,这个东西如果单独使用会怎么样呢?

实际上,self指的就是这个类实例化成一个对象以后,这个对象自身。

而这个对象显然是有filter方法的。所以我们修改一下filter方法,让它返回self:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:261823976
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
class Query:def filter(self):return selfquery = Query()
query.filter().filter()

从图中可以看出,现在已经不会报错了。那么回到最开始的问题,Django里面的链式调用传入查询参数是如何实现的呢?

实际上这里涉及到一个惰性查询的问题。

当我们不停调用.filter()方法的时候,Django会把这些查询条件全部缓存起来,

只有当我们需要获取结果,或者查询满足条件的数据有多少条时,它才会真正地连接数据库去查询。

所以我们这里要模拟这个环境,把查询条件缓存起来。

那么为了获取调用方法时传入的参数名,我们就要使用**kwargs参数。这个参数可以接受所有的key=value形式的参数:

class Query():def __init__(self):self.query_condition = {}def filter(self, **kwargs):self.query_condition.update(kwargs)return selfquery = Query()
a = query.filter(name='kingname').filter(age__gt=15, address='yyyyyy').filter(salary=99999)
print(query.query_condition)

运行效果如下图所示:

在真正需要输出结果的时候,再使用这些缓存的条件,去数据库中查询结果即可。

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,宣传一下呀~👇👇👇更多源码、资料、素材、解答、交流皆点击下方名片获取呀👇👇

http://www.bjxfkj.com.cn/article/580.html

相关文章:

  • 肇庆网站建设/seo优化排名方法
  • 软件开发平台方案/优化大师的作用
  • 做网站源代码/深圳全网推广托管
  • 全屏的网站/今日最新新闻摘抄
  • 南昌网站建设公司信息/竞价网站推广
  • 网站开发作为固定资产怎么摊销/兰蔻搜索引擎营销案例
  • 手机网站 后台/微信seo排名优化软件
  • 佛山市云时代网站建设公司/iis7站长工具
  • vip影视网站怎么做的/最新新闻热点事件2024
  • 网站服务器如何做端口映射/网店seo是什么意思
  • 在哪给人做网站/优化网站怎么真实点击
  • 做网站要多少钱新乡/seo团队
  • 安卓网站客户端制作软件/关键词seo排名怎么样
  • 济南网站维护公司/太原全网推广
  • 网址大全4399/seo技术大师
  • 网站开通会员怎么开发/seo诊断优化方案
  • 美女和帅哥做私人动作的漫画的网站/南宁网站公司
  • 河南平顶山网站建设公司/建个网站费用多少
  • 做盗版电影网站犯法不/近期国内外重大新闻10条
  • 国际知名设计公司收入/seo关键词排名优化软件
  • html 新手入门/seo是什么服务器
  • 农业推广硕士seo点击排名
  • wordpress内容付费模板/廊坊seo外包公司费用
  • dedecms 做的医院网站/网站开发月薪多少钱
  • 阿q的项目wordpress/百度seo怎么把关键词优化上去
  • 公众号登录平台登录入口/东莞网站建设优化
  • go做网站/seo研究中心骗局
  • 游戏设计需要学什么专业/外贸网站优化推广
  • 做图素材网站 千/简述提升关键词排名的方法
  • 搭建网站需要什么技术/河南制作网站公司