本文實例講述了Django框架用戶注銷功能實現方法。分享給大家供大家參考,具體如下:
HttpResponse()里有個delete_cookie()方法專門用來刪除cookie
我們到此來完整的實現一下:訪問首頁如果沒有登錄,就跳轉到登錄頁面,登錄成功之后再跳轉回來的過程。
3個方法,index、login、logout
# coding:utf-8
from django.shortcuts import render,render_to_response
# Create your views here.
from django.http import HttpResponse
from UserClass import UserLogin
def index(request):
msg = {'username':'guest'}
if request.COOKIES.get('userlogin_username') != None :
msg['username'] = request.COOKIES.get('userlogin_username')
myReponse = render_to_response("index.html",msg)
return myReponse
def login(request):
msg = {'result': ''}
if request.method == 'POST':
getUserName = request.POST.get('username')
getPwd = request.POST.get('pwd')
# 實例化UserLogin類
loginObj = UserLogin(getUserName,getPwd)
if loginObj.isLogin():
myReponse = HttpResponse("<script>self.location='/index'</script>")
myReponse.set_cookie('userlogin_username',getUserName,3600)
return myReponse
else:
msg['result'] = '用戶名或密碼錯誤'
myReponse = render_to_response("login.html", msg)
return myReponse
# 用戶注銷
def logout(request):
r = HttpResponse()
r.delete_cookie('userlogin_username')
r.write("<script>self.location='/index'</script>")
return r
首頁模板index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>首頁</title>
</head>
<body>
<h3>這是首頁,當前登錄用戶是:{{ username }}</h3>
{% ifequal username "guest" %}
<p><a href="/login" rel="external nofollow" >登錄</a></p>
{% else %}
<p><a href="/logout" rel="external nofollow" >安裝退出</a></p>
{% endifequal %}
</body>
</html>
其中用到了Django的模板語法
希望本文所述對大家基于Django框架的Python程序設計有所幫助。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。