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字段不支 ...
随机推荐
- .net framework profiles /.net framework 配置
几年前一篇关于 .net framework client profile http://www.cnblogs.com/zzj8704/archive/2010/05/19/1739130.html ...
- Spotlight监控Linux服务器
1.安装 Spotlight on Unix 下载地址:http://worlddownloads.quest.com.edgesuite.net/Repository/www.quest.com/l ...
- mvc4中viewbag viewdata 和 tempdata的区别
ViewBag 不再是字典的键值对结构,而是 dynamic 动态类型,它会在程序运行的时候动态解析. eg: ViewBag.NumberObjs = new string[] { "on ...
- VC++ UDP网络控制台程序
采用的是VC2008,控制台应用程序,使用UDP编写. 1.服务端代码 //UDPServer.cpp #include <WinSock2.h> #include <stdio. ...
- 电脑需要重启才能连上WLAN
我的笔记本电脑是Windows10 系统,在某次更新后发现这个问题,查资料过程中忽然断网,非要重启才能解决,非常恼人.经过一番研究,发现一个行之有效的解决方法. 1.打开设备管理器. 2.点击网络适配 ...
- 搞懂JVM类加载机制
有这样一道面试题: class Singleton{ private static Singleton singleton = new Singleton(); public static int v ...
- 利用matplotlib绘画出二特征的散点图
实例的所有数据来源于吴恩达教授的机器学习数据,特此感谢.数据源可以前往course下载. 本文主要目地在于绘画二维的散点图,至于scatter的用法可以参见我之前的博客. import pandas ...
- [BJWC2018]最长上升子序列
十分感谢GXZ大佬的讲解,此处致以敬意!emmmm在初学状压DP时就理解了如此精妙的一道题,感到很开森~ \(Address\) ________________ #\(\color{red}{\ma ...
- HDU 1829 A Bug's Life (种类并查集)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1829 A Bug's Life Time Limit: 15000/5000 MS (Java/Oth ...
- VPP(Vector Packet Processing)浅析
VPP简介 VPP(Vector Packet Processing)是思科旗下的一款可拓展的开源框架,提供容易使用的.高质量的交换.路由功能 特点:高性能.运行在普通的cpu上. 优点:高性能.技术 ...