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内置的HTTP协议服务器SimpleHTTPServer使用指南
Mar 30 Python
python tkinter canvas 显示图片的示例
Jun 13 Python
Python3.5以上版本lxml导入etree报错的解决方案
Jun 26 Python
python分数表示方式和写法
Jun 26 Python
python同步windows和linux文件
Aug 29 Python
python xlwt如何设置单元格的自定义背景颜色
Sep 03 Python
Python实现微信机器人的方法
Sep 06 Python
python3.8 微信发送服务器监控报警消息代码实现
Nov 05 Python
Python切割图片成九宫格的示例代码
Mar 10 Python
基于pandas向csv添加新的行和列
May 25 Python
Python调用系统命令os.system()和os.popen()的实现
Dec 31 Python
浏览器常用基本操作之python3+selenium4自动化测试(基础篇3)
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 时间计算问题小结
2009/01/04 PHP
关于php fread()使用技巧
2010/01/22 PHP
大家在抢红包,程序员在研究红包算法
2015/08/31 PHP
PHP7之Mongodb API使用详解
2015/12/26 PHP
Dojo 学习要点
2010/09/03 Javascript
html的DOM中document对象forms集合用法实例
2015/01/21 Javascript
jquery制作图片时钟特效
2020/03/30 Javascript
JQuery实现的按钮倒计时效果
2015/12/23 Javascript
JavaScript代码因逗号不规范导致IE不兼容的问题
2016/02/25 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
详解AngularJS脏检查机制及$timeout的妙用
2017/06/19 Javascript
jQuery绑定事件方法及区别(bind,click,on,live,one)
2017/08/14 jQuery
JS兼容所有浏览器的DOMContentLoaded事件
2018/01/12 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
js实现单元格拖拽效果
2020/02/10 Javascript
python备份文件以及mysql数据库的脚本代码
2013/06/10 Python
python web框架学习笔记
2016/05/03 Python
详解使用python crontab设置linux定时任务
2016/12/08 Python
django上传图片并生成缩略图方法示例
2017/12/11 Python
python编写暴力破解zip文档程序的实例讲解
2018/04/24 Python
python消除序列的重复值并保持顺序不变的实例
2018/11/08 Python
Python rstrip()方法实例详解
2018/11/11 Python
python实现批量注册网站用户的示例
2019/02/22 Python
Python模块 _winreg操作注册表
2020/02/05 Python
Python3将ipa包中的文件按大小排序
2020/04/17 Python
[原创]赚疯了!转手立赚800+?大佬的python「抢茅台脚本」使用教程
2021/01/12 Python
html5中localStorage本地存储的简单使用
2017/06/16 HTML / CSS
市级文明单位申报材料
2014/05/07 职场文书
学校领导班子群众路线整改措施
2014/09/16 职场文书
2014年银行个人工作总结
2014/12/05 职场文书
领导欢迎词范文
2015/01/26 职场文书
2015年学校教育教学工作总结
2015/04/22 职场文书
商场广播稿范文
2015/08/19 职场文书
市级三好生竞选稿
2015/11/21 职场文书
浅析InnoDB索引结构
2021/04/05 MySQL
Netty分布式客户端处理接入事件handle源码解析
2022/03/25 Java/Android