django的form常用字段和引數

2022-08-28 16:27:14 字數 4350 閱讀 9679

django 的內建字段

field

required=true#

請求不能為空

widget=none#

html外掛程式

label=none#

用於生成lable標籤或顯示內容

initial=none#

初始值 help_text=''

#幫助資訊(在標籤旁邊顯示)

error_messages=none#

(錯誤資訊)

show_hidden_initial=false#

是否在當前外掛程式後面加乙個隱藏的並且有預設值的外掛程式(可用於檢驗兩次輸入是否一致)

validators=()#

自定義驗證規則

localize=false#

是否支援本地化

disabled=false#

是否可以編輯

label_suffix=none#

label內容字尾

1,charfield(field)

max_length=none, 最大長度

min_length=none, 最小長度

strip=true 是否移除使用者輸入空白

2,integerfield(field)

max_value=none, 最大值

min_value=none, 最小值

3,floatfield(integerfield)

...4,decimalfield(integerfield)

max_value=none, 最大值

min_value=none, 最小值

max_digits=none, 總長度

decimal_places=none, 小數字長度

5,basetemporalfield(field)

input_formats=none 時間格式化

6,datefield(basetemporalfield) 格式:2015-09-01

7,timefield(basetemporalfield) 格式:11:12

8,datetimefield(basetemporalfield)格式:2015-09-01 11:12

9,durationfield(field) 時間間隔:%d %h:%m:%s.%f

...10,regexfield(charfield)

regex, 自定製正規表示式

max_length=none, 最大長度

min_length=none, 最小長度

error_message=none, 忽略,錯誤資訊使用 error_messages=

11,emailfield(charfield)

...12,filefield(field)

allow_empty_file=false 是否允許空檔案

13,imagefield(filefield)

...注:需要pil模組,pip3 install pillow

以上兩個字典使用時,需要注意兩點:

- form表單中 enctype="

multipart/form-data

" - view函式中 obj =myform(request.post, request.files)

14,urlfield(field)

...15,booleanfield(field)

...16,nullbooleanfield(booleanfield)

...17,choicefield(field)

...choices=(), 選項,如:choices = ((0,'

上海'),(1,'北京'

),) required=true, 是否必填

widget=none, 外掛程式,預設select外掛程式

label=none, label內容

initial=none, 初始值

help_text=''

, 幫助提示

18,modelchoicefield(choicefield)

... django.forms.models.modelchoicefield

queryset,

#查詢資料庫中的資料

empty_label="

---------

", #

預設空顯示內容

to_field_name=none, #

html中value的值對應的字段

limit_choices_to=none #

modelform中對queryset二次篩選

19,modelmultiplechoicefield(modelchoicefield)

... django.forms.models.modelmultiplechoicefield

20,typedchoicefield(choicefield)

coerce = lambda

val: val 對選中的值進行一次轉換

empty_value= ''

空值的預設值

21,multiplechoicefield(choicefield)

...22,typedmultiplechoicefield(multiplechoicefield)

coerce = lambda

val: val 對選中的每乙個值進行一次轉換

empty_value= ''

空值的預設值

23,combofield(field)

fields=() 使用多個驗證,如下:即驗證最大長度20,又驗證郵箱格式

fields.combofield(fields=[fields.charfield(max_length=20), fields.emailfield(),])

24,multivaluefield(field)

ps: 抽象類,子類中可以實現聚合多個字典去匹配乙個值,要配合multiwidget使用

25,splitdatetimefield(multivaluefield)

input_date_formats=none, 格式列表:['

%y--%m--%d

', '

%m%d/%y

', '

%m/%d/%y']

input_time_formats=none 格式列表:['

%h:%m:%s

', '

%h:%m:%s.%f

', '

%h:%m']

26,filepathfield(choicefield) 檔案選項,目錄下檔案顯示在頁面中

path, 資料夾路徑

match=none, 正則匹配

recursive=false, 遞迴下面的資料夾

allow_files=true, 允許檔案

allow_folders=false, 允許資料夾

required=true,

widget=none,

label=none,

initial=none,

help_text=''

27,genericipaddressfield

protocol='

both

', both,ipv4,ipv6支援的ip格式

unpack_ipv4=false 解析ipv4位址,如果是::ffff:192.0.2.1時候,可解析為192.0.2.1, ps:protocol必須為both才能啟用

28,slugfield(charfield) 數字,字母,下劃線,減號(連字元)

...29,uuidfield(charfield) uuid型別

...

Django專案 ORM常用字段

orm常用字段 1.autofield int自增列 必須填入引數 primary key true 如果沒有自增列,會自動建立乙個列名為id的列 示例 class publisher models.model id models.autofield primary key true 這是自增id ...

mysql 常用字段型別 mysql 常用字段型別

tinyint m unsigned zerofill 1位元組 極小整數,資料型別用於儲存一些範圍的整數數值範圍 有符號 128 127.無符號 255 特別的 mysql中無布林值,使用tinyint 1 構造。smallint 2位元組 小整數有符號 32768 無符號 65535 mediu...

HTTP協議常用字段

uri 統一資源識別符號,不僅可以標識http,ftp等其他的網路資源 url 統一資源定位符 get 獲取乙個資源,同時引數直接跟在url後面,url長度受限制2048位元組 post 不僅可以獲取資源,還可以提交資源 譬如上傳檔案 引數放在請求體中,包大小4g head 只要響應頭,沒有響應體,...