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基础教程之缩进介绍
Aug 29 Python
使用tensorflow实现线性svm
Sep 07 Python
python requests post多层字典的方法
Dec 27 Python
Python模拟百度自动输入搜索功能的实例
Feb 14 Python
Django页面数据的缓存与使用的具体方法
Apr 23 Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 Python
用pyqt5 给按钮设置图标和css样式的方法
Jun 24 Python
python 已知一个字符,在一个list中找出近似值或相似值实现模糊匹配
Feb 29 Python
matplotlib 曲线图 和 折线图 plt.plot()实例
Apr 17 Python
python安装后的目录在哪里
Jun 21 Python
Python使用xpath实现图片爬取
Sep 16 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中英混合字符串截取函数代码
2011/07/17 PHP
PHP删除目录及目录下所有文件的方法详解
2013/06/06 PHP
php操作路径的经典方法(必看篇)
2016/10/04 PHP
PHP explode()函数用法讲解
2019/02/15 PHP
在laravel中实现ORM模型使用第二个数据库设置
2019/10/24 PHP
Mootools 图片展示插件(lightbox,ImageMenu)收集集合
2010/05/21 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
JavaScript获取多个数组的交集简单实例
2013/11/11 Javascript
javascript 上下banner替换具体实现
2013/11/14 Javascript
js实现简易的单数字随机抽奖(0-9)
2020/03/19 Javascript
简单谈谈JavaScript的同步与异步
2015/12/31 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
使用jQuery和ajax代替iframe的方法(详解)
2017/04/12 jQuery
浅析JavaScript中的平稳退化(graceful degradation)
2017/07/24 Javascript
微信小程序实现签字功能
2019/12/23 Javascript
[17:36]VG战队纪录片
2014/08/21 DOTA
[47:48]DOTA2上海特级锦标赛D组小组赛#2 Liquid VS VP第三局
2016/02/28 DOTA
Python合并两个字典的常用方法与效率比较
2015/06/17 Python
使用python调用zxing库生成二维码图片详解
2017/01/10 Python
Python下载网络小说实例代码
2018/02/03 Python
Python实现线程状态监测简单示例
2018/03/28 Python
新年快乐! python实现绚烂的烟花绽放效果
2019/01/30 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
德国高性价比网上药店:medpex
2017/07/09 全球购物
安德玛比利时官网:Under Armour比利时
2019/08/28 全球购物
评析教师个人的自我评价
2014/02/19 职场文书
区政府领导班子个人对照检查材料
2014/09/25 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
投资意向协议书
2015/01/29 职场文书
2015年见习期个人工作总结
2015/05/28 职场文书
高一地理教学工作总结
2015/08/12 职场文书
vue3如何优雅的实现移动端登录注册模块
2021/03/29 Vue.js
常用的Python代码调试工具总结
2021/06/23 Python
java多态注意项小结
2021/10/16 Java/Android
使用Canvas绘制一个游戏人物属性图
2022/03/25 Javascript