Django 模型欄位型別總結
阿新 • • 發佈:2022-03-24
Django模型中的常見欄位型別
編號 | 欄位型別Filed Types | 描述 |
1 | AutoField | 如果沒有指明主鍵,就會產生一個自增的主鍵 |
2 | BigIntegerField | 64位的整型數值,從 -2^63 (-9223372036854775808) 到 2^63-1(9223372036854775807) |
3 | BinaryField | 儲存二進位制碼的Field. 只支援bytes 賦值 |
4 | BooleanField | 該欄位的預設表單控制元件是CheckboxInput,如果你需要設定null 值,則使用NullBooleanField 來代替BooleanField |
5 | CharField | 用來儲存字串 |
6 | TextField | 用來儲存大字串 |
7 | CommaSeparatedIntegerField | 一個逗號分隔的整數字段 |
8 | DateField | 使用Python的datetime.date例項儲存的日期。auto_now = True:每次儲存物件時,自動設定該欄位為當前時間;auto_now_add=True:物件第一次被建立時自動設定當前時間。需要注意的是,自動儲存的時間的時區使用的是預設時區 |
9 | DateTimeField | 使用Python的datetime.datetime例項表示的日期和時間 |
10 | DecimalField | 用python中 Decimal 的一個例項來表示十進位制浮點數 |
11 | DurationField | 用來儲存一段時間,類似Python中的timedelta |
12 | EmailField | 它和CharField類似,只不過比CharField多了自動校驗輸入的值是否符合Email格式的功能。它使用 EmailValidator 來驗證輸入合法性 |
13 | FileField |
一個上傳檔案的欄位。它有兩個可選屬性: |
14 | FilePathField |
如果,你想使用檔案系統中的檔案,而不是使用者上傳的檔案,請使用FilePathField。例如:from django.conf import settings |
15 | FloatField | 用Python的一個float 例項來表示一個浮點數 |
16 | ImageField | 是FileField的子類,比FileField多了有效圖片校驗功能,確保它是個有效的image |
17 | IntegerField | 整數字段 |
18 | GenericIPAddressField | 一個 IPv4 或 IPv6 地址, 字串格式 (例如 192.0.2.30 或 2a02:42fe::4). 這個欄位的預設表單小部件是一個TextInput |
19 | PositiveIntegerField | 類似 IntegerField, 但值必須是正數或者零(0) |
20 | PositiveSmallIntegerField | 小於32767 的正整數 |
21 | SlugField | Slug 是一個新聞術語(通常叫做短標題)。一個slug只能包含字母、數字、下劃線或者是連字元,通常用來作為短標籤。通常它們是用來放在URL裡的 |
22 | SmallIntegerField | -32768 至 32767的整數 |
23 | TextField | 大文字欄位。該模型預設的表單元件是Textarea |
24 | TimeField | 時間欄位,和Python中 datetime.time 一樣 |
25 | URLField | 一個CharField 型別的URL |
26 | UUIDField | 一個用來儲存UUID的欄位。使用Python的UUID類 |
27 | ForeignKey | 多對一關係 |
28 | ManyToManyField | 多對多關聯 |
29 | 多對多關聯 | 一對一關聯關係 |