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的urllib和urllib2模块制作爬虫的实例教程
Jan 20 Python
Python图算法实例分析
Aug 13 Python
Python实现的计数排序算法示例
Nov 29 Python
Python Flask前后端Ajax交互的方法示例
Jul 31 Python
搭建python django虚拟环境完整步骤详解
Jul 08 Python
利用python实现短信和电话提醒功能的例子
Aug 08 Python
python框架flask表单实现详解
Nov 04 Python
Python 解决OPEN读文件报错 ,路径以及r的问题
Dec 19 Python
在Keras中实现保存和加载权重及模型结构
Jun 15 Python
详解Pycharm与anaconda安装配置指南
Aug 25 Python
Python基础之进程详解
May 21 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连接Access数据库的方法小结
2013/06/20 PHP
php实现删除空目录的方法
2015/03/16 PHP
PHP实现用户登录的案例代码
2018/05/10 PHP
js过滤特殊字符输入适合输入、粘贴、拖拽多种情况
2014/03/22 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
JavaScript操作Oracle数据库示例
2015/03/06 Javascript
jQuery仿Flash上下翻动的中英文导航菜单实例
2015/03/10 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
Node.js返回JSONP详解
2016/05/18 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
NodeJs实现简单的爬虫功能案例分析
2018/12/05 NodeJs
JS立即执行函数功能与用法分析
2019/01/15 Javascript
Vue 组件注册实例详解
2019/02/23 Javascript
微信公众号生成新浪短网址的实现(快速生成)
2019/08/18 Javascript
解决layer弹出层的内容页点击按钮跳转到新的页面问题
2019/09/14 Javascript
JS实现多选框的操作
2020/06/24 Javascript
[01:14]DOTA2亚洲邀请赛 ShowOpen
2015/02/07 DOTA
[01:07:19]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第一场
2018/04/06 DOTA
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
2018/06/22 Python
在Python中分别打印列表中的每一个元素方法
2018/11/07 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
2020/03/23 Python
django在开发中取消外键约束的实现
2020/05/20 Python
CSS3中HSL和HSLA的简单使用示例
2015/07/14 HTML / CSS
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
moosejaw旗下的户外商品促销网站:Mountain Steals
2017/02/27 全球购物
美国礼品卡商城: Gift Card Mall
2017/08/25 全球购物
ROSEFIELD手表荷兰官方网上商店:北欧极简设计女士腕表品牌
2018/01/24 全球购物
TALLY WEiJL法国网上商店:服装、时装及配饰
2019/08/31 全球购物
英国排名第一的冲浪店:Ann’s Cottage
2020/06/21 全球购物
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
应届毕业生简历自我评价
2014/01/31 职场文书
检查机关党的群众路线个人整改措施
2014/10/04 职场文书
夫妻分居协议书范本(有子女版)
2014/11/01 职场文书
2014年社区宣传工作总结
2014/12/02 职场文书
家长会感言
2015/08/01 职场文书