1. 程式人生 > >Django數據模型——通用字段選項

Django數據模型——通用字段選項

字段 rim 管理 文本 成了 net 需求 指定字段 管理表

字段

一個模型最重要也是唯一必需的部分,是它定義的數據庫字段

字段名稱限制

1、字段名不能是pythohn保留字,這樣會導致python語法錯誤

2、字段不能包含連續一個以上的下劃線,這樣會和Django查詢語句語法沖突

通用字段選項

null 如果設置為 True 的話,Django將在數據庫中存儲空值為 NULL 。默認為 False

blank 如果是 True ,該字段允許留空,默認為 False

choices 一個包含雙元素元組的可叠代的對象,用於給字段提供選項

db_column 當前字段在數據庫中對應的列的名字

db_index 如果為 True,創建表格時對這一列穿件數據庫索引

default 字段默認值

editable 如果為False,這個字段在管理那界面或者表單將不能編輯,默認為True

help_text 在管理界面表單對象裏顯示在字段下面的額外幫助文本。即使你沒有管理表單這個屬性對文檔也是有用的

primary_key 如果為 True ,這個字段就會成為模型的主鍵

radio_admin 對於 ForeignKey 或者擁有 choices 設置的字段,Django管理界面會使用列表選擇框(<select>)。如果 radio_admin 設置為 True 的話,Django就會使用單選按鈕界面。 如果字段不是 ForeignKey 或者沒有 choices 設置的話,就不要對字段只用這個選項。

unique 如果是 True ,這個字段的值在整個表中必須是唯一的

unique_for_date 把它的值設成一個 DataField 或者 DateTimeField 的字段的名稱,可以確保字段在這個日期內不會出現重復值

unique_for_month 和 unique_for_date 類似,只是要求字段在指定字段的月份內唯一

unique_for_year 和 unique_for_date 及 unique_for_month 類似,只是時間範圍變成了一年

verbose_name ManyToManyField 和 OneToOneField 之外的字段都接受一個詳細名稱作為第一個位置參數。如果詳細名稱沒有給定的話,Django會把字段的屬性名中的下劃線轉化成空格後的字符串當作詳細名稱。

例:詳細名稱是 "Person‘s first name" : first_name = models.CharField("Person‘s first name", maxlength=30) 下面的例子中,詳細名稱是 "first name" : first_name = models.CharField(maxlength=30) ForeignKey 、 ManyToManyField 和 OneToOneField 要求第一個參數是一個模型類,所以只能使用關鍵字參數 verbose_name : poll = models.ForeignKey(Poll, verbose_name="the related poll") sites = models.ManyToManyField(Site, verbose_name="list of sites") place = models.OneToOneField(Place, verbose_name="related place") 這種轉換不會把 verbose_name 的首字母大寫,Django會根據需求自動大寫首字母。

Django數據模型——通用字段選項