Form验证
第一种操作:主要是这三个函数
is_valid()
cleaned_data
errors
from xiaoqing import models def form(request): if request.method == "GET": return render(request,'form.html') elif request.method == "POST": obj = FM(request.POST) r1 = obj.is_valid() #is_valid() 让这个函数去验证 返回False 或者 True print(r1) if r1: print(r1) print(obj.cleaned_data) #cleaned_data表示返回的正确的信息 # models.Host.objects.create(**obj.cleaned_data) else: print(obj.errors.as_json()) #errors表示错误信息 return render(request,'form.html',{'obj':obj,}) return redirect('/xiaoqing/host')
<form action="/xiaoqing/form/" method="post"> {% csrf_token %} {# {% for row in error_dict.keys %}#} <p><input type="text" placeholder="请输入用户名" name="user"/><span style="color: red">{{ obj.errors.user.0 }}</span></p> <p><input type="password" placeholder="请输入密码" name="pwd"/><span style="color: red">{{ obj.errors.pwd.0 }}</span></p> <p><input type="text" placeholder="请输入邮箱" name="email"/><span style="color: red">{{ obj.errors.email.0 }}</span></p> <input type="submit" value="提交"/> {# {% endfor %}#} </form>