三、html
四、forms
五、模型表單(modelform)
六、forms表單驗證方法
完系統要求:安有django庫
對django表單各知識點解讀
表單是用於使用者與伺服器互動。
從views中例項化傳給html,html收集資料傳結views。
例項化forms類
接收資料和驗證資料
傳值到html中,以字典的形式傳。如
forms類(label_suffix=str) label名後是否加入特定字元。預設是":"
forms類(auto_id=true | false | 「str_%s」)
說明:
是與使用者互動的介面
#檔案上傳要用enctype="multiport/form_data"
django forms表單(forms.py)
以下是單個字段列表 名稱
功能boundfield.label
label標籤顯示名
boundfield.field
功能標籤(包含錯誤)
boundfield.errors
顯示錯誤
boundfield.data
功能標籤的value值
boundfield.id_for_label
功能標籤的id
boundfield.is_hadden
隱藏boundfield.name
標籤中name值
boundfield.value
原始值上傳檔案
加入enctype=「multiport/form_data」 結構
#匯入
from django import forms
class forms_name(forms.form):
form欄位列表
#初始化
def __init__(self,*args,**kwargs):
super().__init__(,*args,**kwargs)
for name,field in self.fields.items():
field.widget.attrs[key] = html對應的屬性
單個欄位的寫法
var = forms.forms型別( forms.forms型別(widget=))
後乙個forms.forms型別是替換前乙個forms.forms型別的
注:widget是用於功能標籤呈現,key是標籤的屬性,value是對屬性的改變。
字段核心引數 名稱
功能說明
field.required
假定該值是否必需
預設是必需
field.label
標籤名field.label_suffix
字尾預設:
field.initial
初始化為特定值
field.disabled
該disabled布林引數,當true使其不會被使用者編輯。
預設為false
字段型別 名稱
值說明booleanfield
true或false值
charfield
字串choicefield
選項列表
必選引數choice
datefield
日期datetime.date, datetime.datetime
datetimefield
時間datetime.datetime
decimalfield
值為十進位制
max_value和 min_value限定數的大小
durationfield
timedelta
emailfield
有效的電子郵件位址
filefield
上傳檔案
filepathfield
檔案路徑
floatfield
浮點型imagefield
上傳integerfield
整數timefield
時間urlfield
**url
作用是把資料庫中的字段轉化為forms表單 結構
#匯入
from django import forms
class forms_name(forms.modelform):
form欄位列表
#引入資料庫
class meta:
molel = 資料庫
fields = 字段列表
#"__all__"
#初始化
def __init__(self,*args,**kwargs):
super().__init__(,*args,**kwargs)
for name,field in self.fields.items():
field.widget.attrs[key] = html對應的屬性
注:與form表單的區別是
form表單用forms.form
model表單用forms.modelform
新增單個和修改資料庫的字段
form欄位列表中可以新增,也可以是資料庫的欄位名,注資料庫的欄位名時,要與資料庫一致。
forms是表單例項化,對forms,modelform都適用
表單的驗證三種方法
表單類中寫函式
def clean(self):
filename = self.cleaned_data[fieldname]
#對各個字段操作
#1. 錯誤提示
raise forms.validationerror('錯誤提示')
#在html中顯示用}
#2.替換值
self.cleaned_data[fieldname] = values=
return self.cleaned_data
def clean_fieldname(self):
fieldname = self.cleaned_data[fieldname]
#對各個字段操作(同上)
return fieldname
TestLink知識點Mantis知識點
testlink知識點 1 testlink系統提供了六種角色 a guest 只有讀的許可權,適合於檢視測試用例和測試需求,以及專案分析的使用者。b testdesigner 可以開展測試用例和測試需求的所有工作。c tester 只能執行測試用例。d senior tester 可以檢視和維護測...
python大一知識點 python知識點複習
放假歸來,這幾天複習了一下好久不用的python,總結了一下知識點。語法基礎tuple與list的異同都由多個元素組成 tuple由 組成,list由組成 tuple不可變,list可變 tuple表示的是一種結構,而list表示的是多個事物的集合 tuple操作比list快 字串用法要點 轉義符和...
mysql常用知識點 mysql 常用知識點。
mysql u root p show databases show tables select from abc order by id limit 0,10 create database bbb exit mysqldump u root p game home backup.sql mysq...