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 XML RPC服务器端和客户端实例
Nov 22 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
May 05 Python
Python中字符串的修改及传参详解
Nov 30 Python
Pycharm技巧之代码跳转该如何回退
Jul 16 Python
python之Character string(实例讲解)
Sep 25 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
Feb 13 Python
Python英文文本分词(无空格)模块wordninja的使用实例
Feb 20 Python
Python快速转换numpy数组中Nan和Inf的方法实例说明
Feb 21 Python
详解python:time模块用法
Mar 25 Python
计算机二级python学习教程(2) python语言基本语法元素
May 16 Python
Python实现搜索算法的实例代码
Jan 02 Python
Python中使用tkFileDialog实现文件选择、保存和路径选择
May 20 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
php 过滤危险html代码
2009/06/29 PHP
php数组函数序列之array_flip() 将数组键名与值对调
2011/11/07 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
PHP CURL获取cookies模拟登录的方法
2013/11/04 PHP
php简单实现MVC
2015/02/05 PHP
PHP制作用户注册系统
2015/10/23 PHP
PHP中Enum(枚举)用法实例详解
2015/12/07 PHP
PHP 与 UTF-8 的最佳实践详细介绍
2017/01/04 PHP
在laravel中实现事务回滚的方法
2019/10/10 PHP
JavaScript面向对象之体会[总结]
2008/11/13 Javascript
JavaScript对象学习经验整理
2013/10/12 Javascript
JQuery判断radio是否选中并获取选中值的示例代码
2014/10/17 Javascript
jQuery Validate插件实现表单强大的验证功能
2015/12/18 Javascript
Query常用DIV操作获取和设置长度宽度的实现方法
2016/09/19 Javascript
详解vue.js全局组件和局部组件
2017/04/10 Javascript
jquery平滑滚动到顶部插件使用详解
2017/05/08 jQuery
详解Vue-cli webpack移动端自动化构建rem问题
2018/04/07 Javascript
微信小程序如何获取用户头像和昵称
2019/09/23 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
在vue中实现echarts随窗体变化
2020/07/27 Javascript
跟老齐学Python之编写类之一创建实例
2014/10/11 Python
Python快速排序算法实例分析
2017/11/29 Python
对Python3.6 IDLE常用快捷键介绍
2018/07/16 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
TensorFLow 不同大小图片的TFrecords存取实例
2020/01/20 Python
NumPy统计函数的实现方法
2020/01/21 Python
意大利独特而优质的家居用品:Fazzini
2018/12/05 全球购物
高中军训感言600字
2014/03/11 职场文书
希特勒的演讲稿
2014/05/23 职场文书
店铺转让协议书(2014版)
2014/09/23 职场文书
销售简历自我评价怎么写
2014/09/26 职场文书
团党委领导干部党的群众路线教育实践活动个人对照检查材料思想汇
2014/10/05 职场文书
小学二年级班主任工作经验交流材料
2015/11/02 职场文书
用golang如何替换某个文件中的字符串
2021/04/25 Golang
python图片灰度化处理的几种方法
2021/06/23 Python
海贼王十大逆天果实 魂魂果实上榜,岩浆果实攻击力最强
2022/03/18 日漫