网络编程
位置:首页>> 网络编程>> Python编程>> django中forms组件的使用与注意

django中forms组件的使用与注意

作者:lemon  发布时间:2021-03-11 00:14:04 

标签:django,forms,组件

forms组件

django框架提供了一个Form类,来进行web开发中的表单提交数据的处理工作。

导入相关模块

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名跟数据库的一致才可以.

来源:https://segmentfault.com/a/1190000019668281

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com