使用from模块的步骤
1,导入模块
from django import forms
2,利用模块直接约束被验证的name
class Fm(forms.Form): user = forms.CharField() pwd = forms.CharField() email = forms.EmailField()
3,生成对象,调用
def fm(request):
obj = Fm(request.POST)
4,判断值
obj.is_valid()
如果提交的数据全部正确,则会true。
如果有错误则会false
result = obj.is_valid() if result is True: a = obj.changed_data # 这个是对方提交的正确的数据 print(a) else: err = obj.errors # 所有的错误提示 print(err)
5. 自定义错误提示。查看错误提示的key。把他转换成json格式.as_json()
err = obj.errors.as_json()
print(err)
# 括号里编写相对应的错误提示
class Fm(forms.Form): user = forms.CharField(error_messages={'required': '用户名不能为空'}) pwd = forms.CharField(max_length=10, min_length=6, error_messages={'required': '密码不能为空', 'max_length': '最大长度不能超过10', 'min_length': '最小长度为6'}) email = forms.EmailField(error_messages={'valid': '邮箱格式不对', 'required': '邮箱不能为空'})
用户验证完整代码
class Fm(forms.Form): user = forms.CharField(error_messages={'required': '用户名不能为空'}) pwd = forms.CharField(max_length=10, min_length=6, error_messages={'required': '密码不能为空', 'max_length': '最大长度不能超过10', 'min_length': '最小长度为6'}) email = forms.EmailField(error_messages={'valid': '邮箱格式不对', 'required': '邮箱不能为空'}) def fm(request): if request.method == "GET": obj = Fm() return render(request, 'fm.html', {'obj': obj}) elif request.method == "POST": obj = Fm(request.POST) r1 = obj.is_valid() if r1: add_user = obj.cleaned_data UserInfo.objects.create(**add_user) # 字典是可以通过orm添加到数据库的。所以我们可以直接添加此字典到数据库里 return HttpResponse('数据添加成功') else: print(obj.errors.as_json()) return render(request, 'fm.html', {'obj': obj})
【完】