常用的field:
使用field可以是對資料驗證的第一步。你期望這個提交上來的資料是什麼型別,那麼就使用什麼型別的field。
charfield:
用來接收文字。
引數:max_length:這個字段值的最大長度。
min_length:這個字段值的最小長度。
required:這個字段是否是必須的。預設是必須的。
error_messages:在某個條件驗證失敗的時候,給出錯誤資訊。
emailfield:
用來接收郵件,會自動驗證郵件是否合法。
錯誤資訊的key:required、invalid。
floatfield:
用來接收浮點型別,並且如果驗證通過後,會將這個欄位的值轉換為浮點型別。
引數:max_value:最大的值。
min_value:最小的值。
錯誤資訊的key:required、invalid、max_value、min_value。
integerfield:
用來接收整形,並且驗證通過後,會將這個欄位的值轉換為整形。
引數:max_value:最大的值。
min_value:最小的值。
錯誤資訊的key:required、invalid、max_value、min_value。
urlfield:
用來接收url格式的字串。
錯誤資訊的key:required、invalid。
:#只定義乙個username欄位,一會通過get獲取
username = forms.charfield(
required=
true
, min_length=3,
max_length=5,
error_messages=
)def
ajaxform
(request)
:if request.method ==
"get"
: ret =
af = ajaxform(request.get)
if af.is_valid():
# 清潔的資料?
af.errors.as_ul() class 'django.utils.safestring.safetext'> 預設就是這個,好像是乙個html標籤
af.errors.as_data() af.errors.as_json() 這樣就可以靈活使用了,困擾了好久
"""下面在來乙個charfield的使用
forms.py
from django import forms
class
useraccountform
(forms.form)
:#只定義乙個username欄位,一會通過get獲取
username = forms.charfield(
required=
true
,min_length=
3,max_length=9,
error_messages=
) password = forms.regexfield(
required=
true
,min_length=
6,max_length=15,
regex=r"^\w+$"
,#只能數字 字母 下劃線,否則輸出
# 清潔的資料
print
("ok"
)print
(uf.cleaned_data)
else
:# 錯誤資訊字典
uf.errors.as_ul() uf.errors.as_json() uf.errors.as_data() 但是這個字典有點問題
會出現這種
"""
djangoform表單使用驗證碼
直接安裝 pip install django captcha django自動幫我們安裝了相關的依賴庫six olefile和pillow,其中的pillow是大名鼎鼎的繪圖模組。註冊captcha django.contrib.admin django.contrib.auth django.c...
DjangoForm 提交驗證
1.建立模版 class loginform forms.form 2.將請求交給模版,建立乙個物件 obj loginform request.post 3.進行驗證 obj.is valid 4.獲取正確的資訊 obj.clean 5.獲取錯誤的資訊 obj.errors 建立乙個 static...
python表單驗證 表單驗證
django有乙個form類為我們提供了強大的表單驗證提交。1 建立form from django import forms class commentform forms.form name forms.charfield label 您的姓名 max length 100 email form...