如何在django中使用forms組件?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。
forms組件
django框架提供了一個(gè)Form類,來(lái)進(jìn)行web開發(fā)中的表單提交數(shù)據(jù)的處理工作。
導(dǎo)入相關(guān)模塊
from django import forms
from django.forms import fields
常規(guī)使用
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)
自定義錯(cuò)誤信息error_messages
class F1Form(forms.Form): username = fields.CharField(max_length=18, min_length=6, required=True, error_messages={ 'required':'用戶名不能為空', 'min_length':'用戶名過(guò)短', 'max_length':'用戶名過(guò)長(zhǎng)' } )
html的調(diào)用
views部分:
def rege(req): obj = F1Form() return render(req,'rege.html',{'OBJ':obj})
html部分:
后臺(tái)數(shù)據(jù)驗(yàn)證:
obj = F1Form(req.POST) if obj.is_valid(): #判斷傳來(lái)的值是否通過(guò)驗(yàn)證 models.UserInfo.objects.create(**obj.cleaned_data) #將值寫入數(shù)據(jù)庫(kù)
~需要注意的是create(**obj.cleaned_data)
方法寫入數(shù)據(jù)庫(kù)的方式,是在forms提交的name名跟數(shù)據(jù)庫(kù)的一致才可以.
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。