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