版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29726359/article/details/86542484
django 记住用户名案例
原理:
- 利用cookie
前台html:
- 代码:
<form method="post" action="/login_check">
用户名:<input id="username" type="text" name="username" value="{{username}}"><br/>
密码:<input id="password" type="text" name="password"><br />
<input type="checkbox" name="remember">记住用户名<br/>
<input type="submit" value="登陆">
</form>
-
页面效果:
后台:
-
login_check:
def login_check(request): username = request.POST.get("username"); password = request.POST.get("password"); remember = request.POST.get('remember'); if username == 'smart' and password =='123': # 用户名密码正确 , 跳转到登陆成功页面 response = redirect("/index") #判断是否记住用户名 if remember =="on": #设置cookie username *过期时间为1周 response.set_cookie('username',username,max_age=7*24*3600) return response else: return redirect('/login')
-
login:
def login(request): '''显示登陆页面''' # 获取cookie username if 'username' in request.COOKIES: # 获取记住的用户名 username = request.COOKIES['username'] else: username = '' return render(request,'bookstore/login.html',{'username': username})
-
hello:
def hello(request): # 1.查询所有图书信息 #books=BookInfo.objects.all() username= request.COOKIES['username'] return render(request,"bookstore/index.html",{"username":username});
-
url配置:
url(r'^index$',views.hello), url(r'^login$',views.login), url(r'^login_check$',views.login_check),
页面效果:
-
登陆
-
点击
-
关闭浏览器再次打开