Django中的class Meta知识点

 

今天来回顾一下Django中model的class Meta


class Main(models.Model):img = models.CharField(max_length=200) # 图片name = models.CharField(max_length=100) # 名称trackid = models.CharField(max_length=16) # 通用idclass Meta:abstract = True        #抽象类

class MainWheel(Main):# 轮播bannerclass Meta:db_table = 'axf_wheel'

class Publisher(models.Model):name = models.CharField(max_length=30)address = models.CharField(max_length=50)city = models.CharField(max_length=60)state_province = models.CharField(max_length=30)country = models.CharField(max_length=50)website = models.URLField()class Meta:ordering = ['order_date']# 按订单升序排列

以上三种class Meta是比较常用的,所以大概回顾一下。查了一些资料,才勉强搞懂。首先class Meta做为嵌套类,主要目的是给上级类添加一些功能,或

 

者指定一些标准。

    比如第一个abstract=True这个东东,是为了继承,将该基类定义为抽象类,即不必生成数据库表单,只作为一个可以继承的基类,把一些子类必须的代码放在基类,避免重复代码也避免重复录入数据库。大概是这么个意思吧?

   再比如db_table='xxxx'这个东东更简单些,其实就是指定该类的数据库表单名字。当然如果不指定也没关系,Django会自动默认的按照一定规则生成数据模型对应的数据库表名。至于合不合你的意那就得看缘分了,所以自己指定往往比较好。

    又比如ordering=‘xxxxx’,是表示按照指定的字段进行数据库的排序。主要是为了好看好查找。你可以指定任意的表单名称或内容,数据库生成之后就会按照指定的列进行排序。还可以升序降序随机,唉反正挺复杂的。

    其实以上三种Django中model嵌套类的元数据定义,都涉及不少的知识点且有多种选择和用法。甚至这种嵌套类中可以有十几种不同的元数据定义方法,真要研究下去晕都晕死了。还好没有一个选项是必需的. 是否添加class Meta 到你的 model 完全是可选的。以后用到什么再查吧,太复杂了。我学习的不好,尽量遇到什么就搞懂什么吧。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457188.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python wheel使用_Python wheel.Wheel方法代碼示例

# 需要導入模塊: from pip import wheel [as 別名]# 或者: from pip.wheel import Wheel [as 別名]def from_line(cls, name, comes_fromNone, prereleasesNone):"""Creates an InstallRequirement from a name, which might be arequirement, directory contai…

英语学习Day1

今天要开始学英语了,我这个人没什么长性,语言这种东西对我来说又是很不擅长的一种技能,那为什么要学英语呢?我要做翻译,也是呵呵了,主要是我想赚钱,这个力量能够支撑我吧,我想。 网上…

LeetCode题解-3-Longest Substring Without Repeating Characters

2019独角兽企业重金招聘Python工程师标准>>> 解题思路 首先要读懂题目,它要求的是找到最长的子串,并且子串中没有出现重复的字符。 我的想法,是用一个map存储每个字符最后出现的位置,还要有个变量start,它用…

Day02-变量_数据类型和运算符

1 数据类型 不同类型的变量可以进行的运算是不同的,所以必须理解变量的类型,python中数据类型可以分为: 内置类型 数值类型:整型int,浮点型float,复数(complex) 35j str:字符串 b…

css hack

http://blog.csdn.net/swallowliyan/article/details/50803469转载于:https://www.cnblogs.com/annie211/p/5934035.html

java从哪学到哪_Java JVM怎么学习啊?从哪方面入手?

叮当猫咪一、 JVM的生命周期  1. JVM实例对应了一个独立运行的java程序它是进程级别  a) 启动。启动一个Java程序时,一个JVM实例就产生了,任何一个拥有public static void main(String[] args)函数的class都可以作为JVM实例运行的起点  b) 运行。m…

JMeter处理Cookie与Session

cookie 和session 的区别: 1、cookie数据存放在客户的浏览器上,session数据放在服务器上。 2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗 考虑到安全应当使用session。 3、session会在一定时间内保存在服务器上。当…

Maximum sum(poj 2479)

题意:给一段数列,将这个数列分成两部分,使两部分的最大子段和的和最大,输出和/*看数据没想到是(O)n的算法,求出从前向后的最大子段和和从后向前的最大子段和,然后枚举断点。 第一次提交不小心折在数组最小值…

java futuretask 实例_java 使用Callable+FutureTask获取执行结果

之前给大家分享了使用CallableFuture获取执行结果的java示例,那么下面要给大家分享的就是使用CallableFutureTask获取执行结果的java示例,一起来看看吧。public class Test{public static void main(String[] args){//方式1ExecutorService executor Ex…

Day03-运算符和表达式

运算符和表达式​ 1. 运算符的优先级 尽量不要把一个表达式写的过于复杂,如果遇到复杂的需求,则最好分步运算 不要过多的依赖于运算符的优先级,否则代码的可读性太差,在实际的项目开发中,一般采用(&#…

Eclipse中字母大小写转换快捷键

ctrlshiftx 转为大写 ctrlshifty 转为小写 转载于:https://www.cnblogs.com/stsinghua/p/6418636.html

dedecms代码研究六

今天讲的是dedecms最关键的东西&#xff0c;模板分析啦。也就是dedetag.class.php 里面的ParseTemplet方法 模板解析方法 先看看一个dedecms标签,大家心里有个数&#xff1a; {dede:arclist row10 orderbypubdate typeimage. imgwidth143 imgheight106} <li><a href&q…

Django-session的存放位置

django-session 存放位置 设置session的保存位置&#xff0c;有三种方法&#xff1a; 保存在关系数据库(db)保存在缓存数据库(cache) 或者 关系缓存数据库(cache_db) 保存在文件系统中(file) 第一种 保存在数据库中&#xff1a;需要在 INSTALL_APPS 中添加&#xff1a;djan…

允许多域名跨域 php,PHP设置多域名允许跨域访问

针对 PHP 语言设置多域名允许跨域访问服务器变量&#xff1a;服务器变量存储在 $_SERVER 数组中&#xff0c;在这个数组中有一个特殊的键值&#xff1a;HTTP_ORIGIN。这个键只在跨域的时候才会存在值&#xff0c;同源时为空字符串响应头设置允许某域名访问&#xff1a;access-c…

蚂蚁分类信息系统 5.8 信息浏览量后台自定义设置

mymps 蚂蚁分类信息是一款基于PHPMySQL的建站系统,为在各种服务器上架设分类信息以及地方门户网站提供完美的解决方案. mymps5.8 下载 蚂蚁分类系统 5.8下载 蚂蚁分类系统下载 mymps下载 蚂蚁分类信息系统 5.8 原信息浏览量后台无法自定义&#xff0c;现增加后台自定义浏览量…

MS SQL-Server快捷键

快捷键 功能 CtrlShiftB 生成解决方案 CtrlF7 生成编译 CtrlO 打开文件 CtrlShiftC 显示类视图窗口 CtrlShiftO 打开项目 F4 显示属性窗口 ShiftF4 …

python编写四位数验证码

def verifycode(request):#引入绘图模块from PIL import Image, ImageDraw, ImageFont#引入随机函数模块import random#定义变量&#xff0c;用于画面的背景色、宽、高bgcolor (random.randrange(20, 100), random.randrange(20, 100), random.randrange(20, 100))width 100h…

php 计算数据偏离度,关于偏离度的测算方法

2015年6月技术总结——关于偏离度的测算方法研究院公用事业部 路璐引言《原理》中说“偏离度是指每一种偿债来源与财富创造能力的距离&#xff0c;所体现的是偿债来源对债务安全的保障程度&#xff0c;唯有通过揭示偿债来源与财富创造能力偏离度才能真正区别每一种偿债来源的风…

Django中celery配置总结

情景&#xff1a; 用户发起request&#xff0c;并等待response返回。在本些views中&#xff0c;可能需要执行一段耗时的程序&#xff0c;那么用户就会等待很长时间&#xff0c; 造成不好的用户体验&#xff0c;比如发送邮件、手机验证码等。 使用celery后&#xff0c;情况就不…

AngularJs ng-repeat限制循环次数

重复数组&#xff1a;<ul ng-initname[1,2,3,3]><li ng-repeat"name in name track by $index">{{name}}</li> </ul> 对象&#xff1a; <ul ng-initobj{ a:"aaa", b:"bbb", c:"ccc" }><li ng-repeat…