django的forms組件的使用

forms組件

導入相關模塊
from django import forms
from django.forms import fields

常規使用

class F1Form(forms.Form):
    username = fields.CharField(max_length=18,min_length=2,required=True)
    pwd = fields.CharField(required=True,max_length=16,min_length=6)
    age = fields.IntegerField(required=True)
    email = fields.EmailField(required=True)

自定義錯誤信息error_messages

class F1Form(forms.Form):
    username = fields.CharField(max_length=18,
    min_length=6,
    required=True,
    error_messages={
           'required':'用戶名不能爲空',
           'min_length':'用戶名過短',
           'max_length':'用戶名過長'
   }
    )

html的調用

views部分:

def rege(req):
    obj = F1Form()
    return render(req,'rege.html',{'OBJ':obj})

html部分:

<form action="">
    <p>{{ OBJ.username }}</p>
    <p>{{ OBJ.pwd }}</p>
    <p>{{ OBJ.age }}</p>
    <p>{{ OBJ.email }}</p>
</form>

後臺數據驗證:

obj = F1Form(req.POST)
if obj.is_valid(): #判斷傳來的值是否通過驗證
    models.UserInfo.objects.create(**obj.cleaned_data) #將值寫入數據庫
    

~需要注意的是create(**obj.cleaned_data)方法寫入數據庫的方式,是在forms提交的name名跟數據庫的一致纔可以.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章