django中forms组件的使用与注意
forms组件
django框架提供了一个Form类,来进行web开发中的表单提交数据的处理工作。
导入相关模块
fromdjangoimportforms
fromdjango.formsimportfields
常规使用
classF1Form(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
classF1Form(forms.Form): username=fields.CharField(max_length=18, min_length=6, required=True, error_messages={ 'required':'用户名不能为空', 'min_length':'用户名过短', 'max_length':'用户名过长' } )
html的调用
views部分:
defrege(req): obj=F1Form() returnrender(req,'rege.html',{'OBJ':obj})
html部分:
{{OBJ.username}}
{{OBJ.pwd}}
{{OBJ.age}}
{{OBJ.email}}
后台数据验证:
obj=F1Form(req.POST) ifobj.is_valid():#判断传来的值是否通过验证 models.UserInfo.objects.create(**obj.cleaned_data)#将值写入数据库
~需要注意的是create(**obj.cleaned_data)方法写入数据库的方式,是在forms提交的name名跟数据库的一致才可以.