Django模型中的元选项和object对象
1、元选项,在模型类型中定义一个Meta类,用于设置元信息
class Student(models.Model):
name = models.CharField(max_length=20)
sex = models.BooleanField()
age = models.IntegerField()
contend = models.CharField(max_length=40)
# 关联类名的小写
grade = models.ForeignKey("grade")
isDelete = models.BooleanField(default=False)
def __str__(self):
return self.name
class Meta():
db_table = "students"
ordering = ["-id"]
属性:db_table 定义数据表名,推荐使用类名小写,并且添加复数
ordering 规定对象的默认排序字段
正序 ordering = ["id"] 倒序 ordering = ["-id"]
排序会增加数据库的开销
2、objects对象
概述:是Manager类型的对象,用于与数据库进行交互
当定义模型时没有指定管理器,则Django会为模型提供一个名为objects的管理器
自定义模型管理器:如果为模型指定了管理类,那么Django不再为模型类提供名为objects的管理类
class Student(models.Model):
#自定义模型管理器
myobject = models.Manager() name = models.CharField(max_length=20)
sex = models.BooleanField()
age = models.IntegerField()
contend = models.CharField(max_length=40)
# 关联类名的小写
grade = models.ForeignKey("grade")
isDelete = models.BooleanField(default=False)
def __str__(self):
return self.name
class Meta():
db_table = "students"
ordering = ["-id"]
自定义模型管理器类
class StudentManager(models.Manager):
def get_queryset(self):
return super(StudentManager, self).get_queryset().filter(isDelete=False)
class Student(models.Model):
#自定义模型管理器
objects = StudentManager()
get_queryset获取查询集(数据集),自定义管理器类调用父类的get_queryset方法后再进行过滤
Django模型中的元选项和object对象的更多相关文章
- 如何在Django模型中管理并发性 orm select_for_update
如何在Django模型中管理并发性 为单用户服务的桌面系统的日子已经过去了 - 网络应用程序现在正在为数百万用户提供服务,许多用户出现了广泛的新问题 - 并发问题. 在本文中,我将介绍在Django模 ...
- Django模型中OneToOneField和ForeignKey的区别
网上看到一篇讲解"Django模型中OneToOneField和ForeignKey区别" 的文章,浅显易懂; 可以把ForeignKey形象的类比为: ForeignKey是on ...
- 如何让django模型中的字段和model名显示为中文
如何让django模型中的字段和model名显示为中文:在模型中加入class Meta即可 class People(models.Model): name = models.CharField(n ...
- 在WPF中,如何得到任何Object对象的XAML代码?
原文:在WPF中,如何得到任何Object对象的XAML代码? 在WPF中,可以使用System.Windows.Markup.XamlWriter.Save(objName)得到任何Object对象 ...
- django模型中的关系对应
显然,关系数据库的力量在于将表相互关联.Django提供了定义三种最常见的数据库关系类型的方法:多对一,多对多和一对一. 在说明之前,首先来理解一下这三个概念: 多对一: 两个集合a,b;集合a中的多 ...
- django模型:字段和选项
https://blog.csdn.net/iloveyin/article/details/44852645一.常用字段1.字段类型使用时需要引入django.db.models包,字段类型如下Au ...
- django模型中的抽象类(abstract)
首先介绍下django的模型有哪些属性:先看例子: Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.以下对此作一总结: abstract 这个属性是定义当前的模 ...
- django 模型中 class Meta 内 各种属性的用法
Django 模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性.下面对此作一总结: abstract 这个属性是定义当前的模型类是不是一个抽象类.所谓抽象类是不会相应数据库表的 ...
- Django 模型中FileField字段
FileField¶ class FileField([upload_to=None, max_length=100, **options])¶ 一个上传文件的字段. 注意 FileField字段不支 ...
随机推荐
- [DP]硬币问题
今天再写一下硬币问题 为什么是再呢 这是个很羞耻的话题 昨天写了一遍硬币 在某谷上跑 没错 挂掉了 TLE MD_SB ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ...
- SuperSocket 介绍
一.总体介绍 SuperSocket 是一个轻量级的可扩展的 Socket 开发框架,由江振宇先生开发. 官方网站:http://www.supersocket.net/ SuperSocket具有如 ...
- codeforces 808G Anthem of Berland
codeforces 808G Anthem of Berland 题面 给定\(s\)串和\(t\)串,字符集是小写字母.\(s\)串中有些位置的值不确定,要求你确定这些位置上的值,使得\(t\)在 ...
- scala当中的文件操作和网络请求
1.读取文件当中每一行的数据 def main(args: Array[String]): Unit = { //注意文件的编码格式,如果编码格式不对,那么读取报错 val file: Buffere ...
- 008单例、继承、final
内容:单例,类继承,final #################################################################################### ...
- FetchType与FetchMode的区别
使用例: @OneToMany(mappedBy="item",cascade=CascadeType.ALL,fetch=FetchType.EAGER) @Fetch(valu ...
- canvas学习笔记1
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 推荐一个WPF仪表盘开源控件
前段时间,做服务器端监控系统,为了界面好看,采用WPF.硬件相关监控,比如CPU.内存等,想用仪表盘控件.网上找了很多这种控件,基本上都是第三方商业控件(虽然很漂亮,不过得money...).最后在C ...
- YourUninstaller注册码(可用)
Name:Giveawayoftheday Registration code: 000017-2PNBK2-J59U6F-317E09-R5TGJQ-6B1WNA-AZCYNJ-GVP86A-7VP ...
- [Python]json对象转换出错expected string or buffer python
[问题] 今天在使用python中的json转换碰到一个问题: 错误显示: expected string or buffer json内容如下: {u'err_no': 0, u'corpus_no ...