Django中自定义查询对象的具体使用


Posted in Python onOctober 13, 2019

自定义查询对象 - objects

①声明一个类EntryManager,继承自models.Manager,并添加自定义函数

②使用创建的自定义类EntryManager 覆盖Models中的objects

# models.py
class AuthorManager(models.Manager): # 新建一个类,继承自models.Manager
  def name_count(self, keywords): # 添加自定义的查询函数
   '''统计姓名中含有某些关键字的数量'''
    return self.filter(name__contains=keywords).count()
    
  def lt_age(self, age):
    '''查询年龄小于指定年龄的信息'''
    return self.filter(age__lt=age)

class Author(models.Model):
  objects = AuthorManager() # 使用创建的自定义类覆盖objects

  name = models.CharField(max_length=30, verbose_name='姓名')
  age = models.IntegerField(verbose_name='年龄')
  email = models.EmailField(null=True, verbose_name='邮箱')
  picture = models.ImageField(null=True, upload_to='static/upload/usring', verbose_name='用户头像')

  publisher = models.ManyToManyField(Publisher, null=True, verbose_name='出版社')

# views.py
def myself(request):
 '''自定义查询函数'''
 # 统计名字中包含王字的
  num = Author.objects.name_count(keywords='王') 
 
 # 查询年龄小于36的作者信息
  authors = Author.objects.lt_age(age=36)
  return render(request, 'name_count.html', locals())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
实例讲解python函数式编程
Jun 09 Python
解析Python中的生成器及其与迭代器的差异
Jun 20 Python
Python学习思维导图(必看篇)
Jun 26 Python
python利用标准库如何获取本地IP示例详解
Nov 01 Python
Python使用PIL模块生成随机验证码
Nov 21 Python
基于python 二维数组及画图的实例详解
Apr 03 Python
python实现微信小程序自动回复
Sep 10 Python
使用Django2快速开发Web项目的详细步骤
Jan 06 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
python 抓包保存为pcap文件并解析的实例
Jul 23 Python
用ldap作为django后端用户登录验证的实现
Dec 07 Python
python3实现常见的排序算法(示例代码)
Jul 04 Python
PyCharm导入python项目并配置虚拟环境的教程详解
Oct 13 #Python
Python 用三行代码提取PDF表格数据
Oct 13 #Python
Python3离线安装Requests模块问题
Oct 13 #Python
详解使用Python下载文件的几种方法
Oct 13 #Python
Python中输入和输出(打印)数据实例方法
Oct 13 #Python
分享8点超级有用的Python编程建议(推荐)
Oct 13 #Python
ipad上运行python的方法步骤
Oct 12 #Python
You might like
全国FM电台频率大全 - 26 西藏自治区
2020/03/11 无线电
用Flash图形化数据(二)
2006/10/09 PHP
PHP中的array数组类型分析说明
2010/07/27 PHP
PHP表单提交表单名称含有点号(.)则会被转化为下划线(_)
2011/12/14 PHP
2014年10个最佳的PHP图像操作库
2014/07/14 PHP
完美解决thinkphp验证码出错无法显示的方法
2014/12/09 PHP
PHP5.3连接Oracle客户端及PDO_OCI模块的安装方法
2016/05/13 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
IE和firefox浏览器的event事件兼容性汇总
2009/12/06 Javascript
YUI Compressor压缩JavaScript原理及微优化
2013/01/07 Javascript
关于jquery的多个选择器的使用示例
2013/10/18 Javascript
Javascript实现真实字符串剩余字数提示的实例代码
2013/10/22 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
node.js中的events.emitter.removeListener方法使用说明
2014/12/10 Javascript
jQuery中siblings()方法用法实例
2015/01/08 Javascript
微信小程序 PHP后端form表单提交实例详解
2017/01/12 Javascript
浅析vue component 组件使用
2017/03/06 Javascript
Bootstrap4如何定制自己的颜色和风格
2018/02/26 Javascript
解决vue this.$forceUpdate() 处理页面刷新问题(v-for循环值刷新等)
2018/07/26 Javascript
详解vue挂载到dom上会发生什么
2019/01/20 Javascript
JavaScript 俄罗斯方块游戏实现方法与代码解释
2020/04/08 Javascript
解决vuecli3中img src 的引入问题
2020/08/04 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python编程产生非均匀随机数的几种方法代码分享
2017/12/13 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
2018/01/15 Python
python实现自动登录
2018/09/17 Python
python实现mask矩阵示例(根据列表所给元素)
2020/07/30 Python
Python连接Mysql进行增删改查的示例代码
2020/08/03 Python
全球最大的跑步用品商店:Road Runner Sports
2016/09/11 全球购物
Booking.com美国:全球酒店预订网站
2017/04/18 全球购物
宣传部部长竞选演讲稿
2014/04/26 职场文书
收银员岗位职责范本
2015/04/07 职场文书
类和原型的设计模式之复制与委托差异
2022/07/07 Javascript