常用字段型別:
模型欄位名
說明mysql對應欄位名
autofield
自增字段,如果沒有指定將自動新增乙個名為"id"的自增主鍵字段
int(11)
integerfield
整數字段
intbigintegerfield
類似於integerfield,乙個64位的整數
bigint
smallintegerfield
類似於integerfield,-32768到32767
smallint
positiveintegerfield
類似於integerfield,但必須為正數或0
intpositivesmallintegerfield
類似於integerfield,0到32767
smallint
binaryfield
用於儲存原始二進位制資料的字段。它可以分配bytes、bytearray或memoryview
longblob
booleanfield
布林值字段
tinyint(1)
charfield
字串字段,從小到大的字串。對於大量文字,請使用textfield。
varchar
decimalfield
固定精度的十進位制數字
decimal
emailfield
郵件字段
varchar
floatfield
郵件浮點數字段
double
genericipaddressfield
字串格式的ipv4或ipv6位址
char(39)
slugfield
僅包含字母,數字,下劃線或連字元。它們通常在url中使用。
varchar
textfield
大文字字段
longtext
urlfield
乙個charfield乙個url
varchar
uuidfield
用於儲存通用唯一識別符號的字段。使用python的 uuid類。
char(32)
選項:
選項名說明null
設定為true時,意味著「無資料」有兩種可能:null和空字串,當設定了blank=true時,null也需要設定為true
blank
設定為true時表示允許為空,為false時則表示不允許為空
max_length
當前欄位的最大長度
db_column
用於該字段的資料庫列的名稱。如果未指定,則django將使用該字段的名稱。如果您的資料庫列名稱是sql保留字,或者包含python變數名稱中不允許使用的字元(尤其是連字元),那可以。django在幕後引用列名和表名。
db_index
如果為true,將為此字段建立資料庫索引。
db_tablespace
如果此字段已建立索引,則用於該字段的索引的資料庫表空間的名稱。預設值是專案的 default_index_tablespace設定(如果已設定)或 db_tablespace模型的設定(如果有)。如果後端不支援索引的表空間,則忽略此選項。
default
設定預設值,預設值需與當前欄位同型別
primary_key
如果設定為true,則初始設定為該模型的主鍵。乙個物件只允許使用乙個主鍵。
unique
如果設定為true,這個字段必須在整個表中保持值唯一,且將會建立索引。
validators
為此字段執行的驗證器列表。
verbose_name
欄位的易讀名稱(注釋)。
Django 模型字段 ImageField
class imagefield upload to none height field none width field none max length 100,options 從filefield繼承所有屬性和方法,但也會驗證上載的物件是否為有效影象。除了filefield可用的特殊屬性外,im...
django擴充套件已有模型的字段
有時,我們需要擴充套件model的filed,比如想為每條記錄都附加乙個字段。我們可以使用模型自定義方法及python的內建函式property來實現。1.定義模型如下 其中自定義的 get section方法返回confitem的外來鍵的外來鍵。2.修改檢視admin.py中以顯示這個新字段 3....
django模型 欄位和選項
一 常用字段 1 字段型別 使用時需要引入django.db.models包,字段型別如下 autofield 自動增長的integerfield,通常不用指定,不指定時django會自動建立屬性名為id的自動增長屬性 booleanfield 布林字段,值為true或false nullboole...