Django 經過 models 實現數據庫的建立、修改、刪除等操做,本文爲模型中通常經常使用的類型的清單,便於查詢和使用:git
CharField.max_length:字符的最大長度,django會根據這個參數在數據庫層和校驗層限制該字段所容許的最大字符數。正則表達式
auto_now:當對象被保存時,自動將該字段的值設置爲當前時間.一般用於表示 「last-modified」 時間戳;
auto_now_add:當對象首次被建立時,自動將該字段的值設置爲當前時間.一般用於表示對象建立時間。數據庫
path:必需參數,一個目錄的絕對文件系統路徑。 FilePathField 據此獲得可選項目。 Example: 「/home/p_w_picpaths」;
match:可選參數, 一個正則表達式, 做爲一個字符串, FilePathField 將使用它過濾文件名。 注意這個正則表達式只會應用到 base filename 而不是路徑全名。 Example: 「foo。*\。txt^」, 將匹配文件 foo23.txt 卻不匹配 bar.txt 或 foo23.gif;
recursive:可選參數, 是否包括 path 下所有子目錄,True 或 False,默認值爲 False。django
match 僅應用於 base filename, 而不是路徑全名。 如:FilePathField(path=」/home/p_w_picpaths」, match=」foo.*」, recursive=True)…會匹配 /home/p_w_picpaths/foo.gif 而不匹配 /home/p_w_picpaths/foo/bar.gif服務器
max_digits:總位數(不包括小數點和符號)
decimal_places:小數位數。如:要保存最大值爲 999 (小數點後保存2位),你要這樣定義字段:models.FloatField(…,max_digits=5, decimal_places=2),要保存最大值一百萬(小數點後保存10位)的話,你要這樣定義:models.FloatField(…,max_digits=19, decimal_places=10)ide
正小整型字段,相似 PositiveIntegerField, 取值範圍較小(數據庫相關)SlugField「Slug」 是一個報紙術語。 slug 是某個東西的小小標記(短籤), 只包含字母,數字,下劃線和連字符。它們一般用於URLs。 若你使用 Django 開發版本,你能夠指定 maxlength。 若 maxlength 未指定, Django 會使用默認長度: 50,它接受一個額外的參數:函數
prepopulate_from: 來源於slug的自動預置列表工具
schema_path:校驗文本的 RelaxNG schema 的文件系統路徑。性能
null :缺省設置爲false.一般不將其用於字符型字段上,好比CharField,TextField上.字符型字段若是沒有值會返回空字符串。url
blank:該字段是否能夠爲空。若是爲假,則必須有值
choices:一個用來選擇值的2維元組。第一個值是實際存儲的值,第二個用來方便進行選擇。如SEX_CHOICES= ((‘F’,'Female’),(‘M’,'Male’),)
core:db_column,db_index 若是爲真將爲此字段建立索引
default:設定缺省值
editable:若是爲假,admin模式下將不能改寫。缺省爲真
help_text:admin模式下幫助文檔
primary_key:設置主鍵,若是沒有設置django建立表時會自動加上:
1 |
id = meta.AutoField( 'ID' , primary_key = True ) |
2 |
primary_key = True implies blank = False , null = False and unique = True . Only one primary key is allowed on an object . |
radio_admin:用於admin模式下將select轉換爲radio顯示。只用於ForeignKey或者設置了choices
unique:數據惟一
unique_for_date:日期惟一,以下例中系統將不容許title和pub_date兩個都相同的數據重複出現
title = meta.CharField(maxlength=30,unique_for_date=’pub_date’)
unique_for_month / unique_for_year:用法同上
validator_list:有效性檢查。非有效產生 django.core.validators.ValidationError 錯誤