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基本数据类型详细介绍
Mar 11 Python
python进程管理工具supervisor使用实例
Sep 17 Python
python实现在sqlite动态创建表的方法
May 08 Python
Python编程求质数实例代码
Jan 31 Python
python 美化输出信息的实例
Oct 15 Python
python3安装crypto出错及解决方法
Jul 30 Python
解决Mac下使用python的坑
Aug 13 Python
Python定时发送天气预报邮件代码实例
Sep 09 Python
Python @property装饰器原理解析
Jan 22 Python
Python环境管理virtualenv&virtualenvwrapper的配置详解
Jul 01 Python
如何用python批量调整视频声音
Dec 22 Python
python机器学习实现oneR算法(以鸢尾data为例)
Mar 03 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
玛琪朵 Macchiato
2021/03/03 咖啡文化
IE bug table元素的innerHTML
2010/01/11 Javascript
基于javascript如何传递特殊字符
2015/11/30 Javascript
移动端脚本框架Hammer.js
2016/12/15 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
Vue报错:Uncaught TypeError: Cannot assign to read only property’exports‘ of object’#‘的解决方法
2017/06/17 Javascript
js判断数组是否包含某个字符串变量的实例
2017/11/24 Javascript
node+koa2+mysql+bootstrap搭建一个前端论坛
2018/05/06 Javascript
微信小程序实践之动态控制组件的显示/隐藏功能
2018/07/18 Javascript
Vue插值、表达式、分隔符、指令知识小结
2018/10/12 Javascript
JavaScript实现简单音乐播放器
2020/04/17 Javascript
微信小程序下拉菜单效果的实例代码
2019/05/14 Javascript
JS学习笔记之原型链和利用原型实现继承详解
2019/05/29 Javascript
JS回调函数原理与用法详解【附PHP回调函数】
2019/07/20 Javascript
[51:17]Mineski vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.22
2019/09/05 DOTA
粗略分析Python中的内存泄漏
2015/04/23 Python
Python中for循环控制语句用法实例
2015/06/02 Python
python3安装pip3(install pip3 for python 3.x)
2018/04/03 Python
django自带的server 让外网主机访问方法
2018/05/14 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
2018/10/11 Python
Python 函数返回值的示例代码
2019/03/11 Python
Python字符串的常见操作实例小结
2019/04/08 Python
python将视频转换为全字符视频
2019/04/26 Python
python基于paramiko将文件上传到服务器代码实现
2019/07/08 Python
Python流程控制常用工具详解
2020/02/24 Python
python的列表List求均值和中位数实例
2020/03/03 Python
python中time包实例详解
2021/02/02 Python
python 递归相关知识总结
2021/03/03 Python
前端水印的简单实现代码示例
2020/12/02 HTML / CSS
全球速卖通法国在线交易平台:AliExpress法国
2017/07/07 全球购物
2013英文求职信模板范文
2013/11/15 职场文书
会计电算化学生个人的自我评价
2014/02/08 职场文书
社会调查研究计划书
2014/05/01 职场文书
书法大赛策划方案
2014/06/04 职场文书
2015年六一儿童节活动方案
2015/05/05 职场文书
CentOS下安装Jenkins的完整步骤
2022/04/07 Servers