Django數據模型——數據庫字段類型


字段

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

字段名稱限制

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

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

數據庫列的類型

AutoField 指一個能夠根據可用ID自增的 IntegerField 。通常你不用直接使用它,如果你沒有指定主鍵的話,系統會自動在你的模型中加入這樣的主鍵。

BooleanField 一個真/假(true/false)字段。

CharField 一個字符串字段,適用於中小長度的字符串

注:CharField 有一個額外的必需參數: maxlength ,它是字段的最大長度(字符數)。這個最大長度在數據庫層面和Django驗證中是被強制要求的。

CommaaSeparatedIntegerField 一個用逗號分隔開的整數字段。和 CharField 中一樣, maxlength 參數是必需的。

DateField 日期字段

注:可選參數

1、auto_now 對象保存時自動設置為當前日期,即修改日期

2、auto_now_add 對象創建時自動設置為當前時間,即創建日期

DateTimeField 時間日期字段,額外選項同DateField

EmailField 一個能檢查值是否是有效的電子郵件地址的 CharField 。不接受 maxlength 參數,它的 maxlength 被自動設置為75。

FileField 文件上傳字段,必須參數upload_to一個本地的文件系統路徑,被附加到你的 MEDIA_ROOT 設置后面,這決定了 get_<fieldname>_url() 輔助函數的輸出

FilePathField 文件系統中某個目錄下的文件名

FloatField 浮點數,

注:必須參數

1、max_digits 數字中允許的最大的數字位數

2、decimal_places 數字的小數位數

ImageField 同FileField要驗證上傳的對象是一個有效的圖片

注:可選參數

1、height_field 高度

2、width_field 寬度

IntegerField 整數

IPAddressField IP地址,以字符串格式表示(例如: "24.124.1.30" )。

NullBooleanField 就像一個 BooleanField ,但它支持 None /Null

PhoneNumberField 它是一個 CharField ,並且會檢查值是否是一個合法的美式電話格式,如(XXX-XXX-XXXX)

PositiveIntegerField 正整數

SlugField 嵌條是報紙業的術語。 嵌條 就是一段內容的簡短標簽,這段內容只能包含字母、數字、下划線或連字符,通常用於URL中

SmallIntegerField 和 IntegerField 類似,但是只允許在一個數據庫相關的范圍內的數值(通常是-32,768到+32,767)

TextField 不限長度的文字長度

TimeField 時分秒的時間顯示。它接受的可指定參數與 DateField 和 DateTimeField 相同

URLField 存儲URL的字段

USStateField 美國州名稱縮寫,兩個字母

XMLField 它就是一個 TextField ,只不過要檢查值是匹配指定schema的合法XML。它有一個必需參數: schema_path ,它是驗證字段合法性所需的RELAX NG( http://www.relaxng.org/ )schema的物理路徑。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM