Django之用户登录实例
1,django目录结构(需要用到的文件用红箭头标记):

2,首先在templates模版目录下创建login.html文件

3,将bootstrap导入到static/plugins目录下 PS:Bootstrap是Twitter推出的一个用于前端开发的开源工具包,有很丰富的前端各种案例

4,首先在templates下创建login.html登陆首页
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登陆</title>
<link rel="stylesheet" href="/static/plugins/bootstrap/css/bootstrap.css"></link>
</head>
<body>
<div class="container">
<form class="form-horizontal" action="/login/" method="post">
<div class="form-group">
<label for="inputEmail3" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" name="email" class="form-control" placeholder="Email">
</div>
</div>
<div class="form-group">
<label for="inputPassword3" class="col-sm-2 control-label">Password</label>
<div class="col-sm-10">
<input type="password" name="pwd" class="form-control" placeholder="Password">
</div>
</div>
<div class="form-group">
<div class="col-sm-offset-2 col-sm-10">
<button type="submit" class="btn btn-default">Sign in</button>
<span style="color:red;"> {{ status }}</span>
</div>
</div>
</form>
</div>
<script type="text/javascript" src="/static/js/jquery-2.1.4.min.js"></script>
<script type="text/javascript" src="static/plugins/bootstrap/js/bootstrap.js"></script>
</body>
</html>
5,先把login.html加到django的路由表里面,django的路由文件是urls.py
from django.conf.urls import include, url
from django.contrib import admin
from app01 import views
urlpatterns = [
url(r'^admin/', include(admin.site.urls)),
url(r'^home/', views.home),
url(r'^son/', views.son),
url(r'^login/',views.login),
]
6,路由文件添加好后,在vies.py中添加登陆认证逻辑
def login(request):
print request.method
if request.method == "POST": #login.html是用POST方式提交,这里判断是POST方式后,就开始处理玩家的输入
input_email = request.POST['email'] #获取login.html用户的输入,取name的值 <input type="email" name="email" class="form-control" placeholder="Email">
input_pwd = request.POST['pwd'] #获取login.html用户的输入,取name的值 <input type="password" name="pwd" class="form-control" placeholder="Password">
if input_email == 'lei@qq.com' and input_pwd == "123":
from django.shortcuts import redirect #导入django的重定向模块
return redirect("http://www.baidu.com") #重定向到百度
else:
return render(request, 'login.html',{'status':'ERROR Incorrect username or password'}) #如果用户输入的账号密码不对,就提示错误信息"ERROR Incorrect username or password" ,login.html页面采用模版来渲染这段错误提示
return render(request,'login.html')
7,验证效果
首先故意输错,看页面提示什么

输入错误的账号密码后,页面提示红色错误
这次输入正确的账号密码,正常是会跳转到http://www.baidu.com 这里就不展示了。
贵有恒,何必三更起五更睡;最无益,只怕一日暴十寒
浙公网安备 33010602011771号