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实现电子词典
Apr 23 Python
Python中给List添加元素的4种方法分享
Nov 28 Python
Python的Flask框架的简介和安装方法
Nov 13 Python
windows下python连接oracle数据库
Jun 07 Python
python与caffe改变通道顺序的方法
Aug 04 Python
Django migrations 默认目录修改的方法教程
Sep 28 Python
Python正则表达式指南 推荐
Oct 09 Python
Python自动化之数据驱动让你的脚本简洁10倍【推荐】
Jun 04 Python
Python 利用高德地图api实现经纬度与地址的批量转换
Aug 14 Python
pytorch动态网络以及权重共享实例
Jan 06 Python
pytorch-RNN进行回归曲线预测方式
Jan 14 Python
Python机器学习工具scikit-learn的使用笔记
Jan 28 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中操作MySQL数据库的一些要注意的问题
2006/10/09 PHP
php结合正则获取字符串中数字
2015/06/19 PHP
PHP实现生成模糊图片的方法示例
2017/12/21 PHP
laravel手动创建数组分页的实现代码
2018/06/07 PHP
Prototype Date对象 学习
2009/07/12 Javascript
Javascript 入门基础学习
2010/03/10 Javascript
基于jquery实现的表格分页实现代码
2011/06/21 Javascript
jQuery.each()用法分享
2012/07/31 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
2013/06/05 Javascript
快速查找数组中的某个元素并返回下标示例
2013/09/03 Javascript
JavaScript实现简单图片翻转的方法
2015/04/17 Javascript
基于jQuery和CSS3制作数字时钟附源码下载(jquery篇)
2015/11/24 Javascript
JS实现控制文本框的内容
2016/07/10 Javascript
用nodejs搭建websocket服务器
2017/01/23 NodeJs
AngularJS的脏检查深入分析
2017/04/22 Javascript
html5+canvas实现支持触屏的签名插件教程
2017/05/08 Javascript
react-router实现按需加载
2017/05/09 Javascript
vue+socket.io+express+mongodb 实现简易多房间在线群聊示例
2017/10/21 Javascript
webpack学习教程之前端性能优化总结
2017/12/05 Javascript
Javascript 类型转换、封闭函数及常见内置对象操作示例
2019/11/15 Javascript
js实现小球在页面规定的区域运动
2020/06/16 Javascript
[06:44]2014DOTA2国际邀请赛-钥匙体育馆开战 开幕式振奋人心
2014/07/19 DOTA
[40:10]2015国际邀请赛全明星表演赛
2015/08/07 DOTA
用Python编写简单的定时器的方法
2015/05/02 Python
TensorFlow Session会话控制&Variable变量详解
2018/07/30 Python
python项目对接钉钉SDK的实现
2019/07/15 Python
python等待10秒执行下一命令的方法
2020/07/19 Python
CSS3 Flexbox中flex-shrink属性的用法示例介绍
2013/12/30 HTML / CSS
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
Talbots官网:美国成熟女装品牌
2019/11/15 全球购物
巴西备受欢迎的服装和生活方式品牌:FARM Rio
2020/02/04 全球购物
String和StringBuffer的区别
2015/08/13 面试题
小学运动会表扬稿
2014/01/19 职场文书
保护环境建议书400字
2014/05/13 职场文书
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
MySQL 不等于的三种使用及区别
2021/06/03 MySQL