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.pswp.cn/news/457188.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/457188.shtml
英文地址,請注明出處:http://en.pswp.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…