Django对models里的objects的使用详解


Posted in Python onAugust 17, 2019

首先我们先熟悉下objects的大致概念.

object是模型属性---用于模型对象和数据库交互 .

objects = Manager() 是管理器类型的对象 ,是Model和数据库进行查询的接口.

objects : 管理器对象

是Manager类型的对象,定义在from django.db import models中

用于模型对象和数据库交互

是默认自动生成的属性,但是可以自定义管理器对象

实例:

class Students(models.Model):

  #  stuobj  = models.Manager()  #第一种重新定义objects,objects是Manager()的对象
  #  students.objects.all() 变成了 Students.stuObj.all()
  #  stuobj2 = studentManager() 重新定义objects,查询变成Students.stuObj2.all()
  sname  = models.CharField(max_length=20)
  sgender = models.CharField(max_length=20)
  sage   = models.IntegerField()
  scontend = models.CharField(max_length=100,null=True,blank=True)

自原本的我们的objects=models.Manager(),查询类的属性时都是. 类名.objects.方法

Students.objects.all() 查询完之后返回一个queryset()

定义管理器对象:例如stuobj = models.Manager()

一旦自定义管理器对象,默认的objects 就不再自动生成,查询时就变成了

Students.stuobj.all()

查询时某些字段我们并不想要.这时候我们就可以自定义objects.

class studentManager(models.Manager):
  def get_queryset(self):
    return super(studentManager,self).get_queryset().filter(isDelete=False)

我们定义一个自定义的manager(),继承models.manager.

后面的我们把isDelete是错误的,就如上面自己定义的,下面

stuobj2 = studentManager()

Students.stuobj2.all()就把isDelete是错误的删除了.

以上这篇Django对models里的objects的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python开发之thread线程基础实例入门
Nov 11 Python
Python3使用requests发闪存的方法
May 11 Python
解决python大批量读写.doc文件的问题
May 08 Python
Python Web编程之WSGI协议简介
Jul 18 Python
python随机数分布random测试
Aug 27 Python
pandas dataframe添加表格框线输出的方法
Feb 08 Python
python使用sessions模拟登录淘宝的方式
Aug 16 Python
python如何求数组连续最大和的示例代码
Feb 04 Python
Python3.6 中的pyinstaller安装和使用教程
Mar 16 Python
浅谈pandas dataframe对除数是零的处理
Jul 20 Python
python IP地址转整数
Nov 20 Python
只用20行Python代码实现屏幕录制功能
Jun 02 Python
python3.6中@property装饰器的使用方法示例
Aug 17 #Python
对django的User模型和四种扩展/重写方法小结
Aug 17 #Python
python3.6编写的单元测试示例
Aug 17 #Python
python3 实现的对象与json相互转换操作示例
Aug 17 #Python
python3实现的zip格式压缩文件夹操作示例
Aug 17 #Python
django 通过url实现简单的权限控制的例子
Aug 16 #Python
对Django中内置的User模型实例详解
Aug 16 #Python
You might like
虹吸式咖啡探讨–研磨
2021/03/03 冲泡冲煮
模仿OSO的论坛(三)
2006/10/09 PHP
使用PHP实现密保卡功能实现代码<打包下载直接运行>
2011/10/09 PHP
php计算title标题相似比的方法
2015/07/29 PHP
让ThinkPHP的模板引擎达到最佳效率的方法详解
2017/03/14 PHP
关于php支持的协议与封装协议总结(推荐)
2017/11/17 PHP
PHP设计模式之PHP迭代器模式讲解
2019/03/22 PHP
laravel实现上传图片的两种方式小结
2019/10/12 PHP
科讯商业版中用到的ajax空间与分页函数
2007/09/02 Javascript
Jquery ui css framework
2010/06/28 Javascript
jQuery操作Select选择的Text和Value(获取/设置/添加/删除)
2013/03/06 Javascript
js获取select标签的值且兼容IE与firefox
2013/12/30 Javascript
Js实现滚动变色的文字效果
2014/06/16 Javascript
transport.js和jquery冲突问题的解决方法
2015/02/10 Javascript
Jquery简单实现GridView行高亮的方法
2015/06/15 Javascript
javascript每日必学之循环
2016/02/19 Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
2016/11/03 Javascript
JavaScript定义全局对象的方法示例
2017/01/12 Javascript
在Vue中使用echarts的实例代码(3种图)
2017/07/10 Javascript
Preload基础使用方法详解
2020/02/03 Javascript
[04:44]DOTA2英雄梦之声_第12期_矮人直升机
2014/06/21 DOTA
Python 文件重命名工具代码
2009/07/26 Python
动态创建类实例代码
2009/10/07 Python
Python Web开发模板引擎优缺点总结
2014/05/06 Python
Python使用OpenPyXL处理Excel表格
2020/07/02 Python
解决Pycharm 中遇到Unresolved reference 'sklearn'的问题
2020/07/13 Python
详解Python调用系统命令的六种方法
2021/01/28 Python
css3制作动态进度条以及附加jQuery百分比数字显示
2012/12/13 HTML / CSS
HTML5边玩边学(1)画布实现方法
2010/09/21 HTML / CSS
HTML5 Canvas 绘图——使用 Canvas 绘制图形图文教程 使用html5 canvas 绘制精美的图
2015/08/31 HTML / CSS
易程科技软件测试笔试
2013/03/24 面试题
联谊活动策划书
2014/01/26 职场文书
聊城大学毕业生自荐书
2014/02/01 职场文书
优秀实习生感言
2014/03/01 职场文书
幼儿园教师师德表现自我评价
2015/03/05 职场文书
入党介绍人考察意见
2015/06/01 职场文书