django的From表单认证--1--

from django.shortcuts import render,HttpResponse,redirect

# Create your views here.

def test(request):
    return HttpResponse('..................')

from django.forms import Form,fields
class LoginFrom(Form):
    username = fields.CharField(min_length=6,max_length=12,required=True,
                                error_messages={ #这里可以设置返回的错误信息
                                    'required':'用户不能为空',
                                    'min_length':'输入的太短了',
                                    'max_length':'太长了',
                                },
                                )
    password = fields.CharField(max_length=8,required=True)
def login(request):
    if request.method == "GET":
        return render(request,'login.html')
    else:
        obj = LoginFrom(request.POST)
        if obj.is_valid():
            print(obj.cleaned_data)#字典类型,{'password': '12134', 'username': '3244353553'}
            return redirect('http://www.baidu.com')
        else:
            return render(request,'login.html',{'obj':obj})

html代码

<form action="/login.html/" method="post">
    <p><input type="text" name="username">用户名</p>{{ obj.errors.username.0 }}
    <p><input type="password" name="password">密码</p>{{ obj.errors.username.0 }}
    <p><input type="submit" value="提交"></p>
</form>

这里通过自己定义好的规则,通过Form表单的验证,来正则我们的数据。如果我们自己定义了2条正则,客户传入了3条数据。那么我们还是验证我们定义的两条数据。这是安全的。