Django框架用户注销功能实现方法分析


Posted in Python onMay 28, 2019

本文实例讲述了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>
  <h2>这是首页,当前登录用户是:{{ username }}</h2>
  {% 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程序设计有所帮助。

Python 相关文章推荐
简介Python设计模式中的代理模式与模板方法模式编程
Feb 02 Python
Python基于回溯法子集树模板解决m着色问题示例
Sep 07 Python
python2 与python3的print区别小结
Jan 16 Python
python训练数据时打乱训练数据与标签的两种方法小结
Nov 08 Python
python爬取微信公众号文章的方法
Feb 26 Python
python基于property()函数定义属性
Jan 22 Python
Tensorflow矩阵运算实例(矩阵相乘,点乘,行/列累加)
Feb 05 Python
Python标准库json模块和pickle模块使用详解
Mar 10 Python
pip安装提示Twisted错误问题(Python3.6.4安装Twisted错误)
May 09 Python
Python加速程序运行的方法
Jul 29 Python
Python办公自动化解决world文件批量转换
Sep 15 Python
PyCharm 配置SSH和SFTP连接远程服务器
May 11 Python
Django框架首页和登录页分离操作示例
May 28 #Python
Django框架封装外部函数示例
May 28 #Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
May 27 #Python
python利用多种方式来统计词频(单词个数)
May 27 #Python
numpy中的ndarray方法和属性详解
May 27 #Python
numpy.linspace函数具体使用详解
May 27 #Python
Django利用cookie保存用户登录信息的简单实现方法
May 27 #Python
You might like
ajax+php打造进度条 readyState各状态
2010/03/20 PHP
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
2010/11/01 PHP
PHP自动选择 连接本地还是远程数据库
2010/12/02 PHP
php实现的zip文件内容比较类
2014/09/24 PHP
codeigniter实现get分页的方法
2015/07/10 PHP
php自动加载方式集合
2016/04/04 PHP
PHP实现的字符串匹配算法示例【sunday算法】
2017/12/19 PHP
php多进程中的阻塞与非阻塞操作实例分析
2020/03/04 PHP
简单JS代码压缩器
2006/10/12 Javascript
JavaScript+CSS实现仿天猫侧边网页菜单效果
2015/08/25 Javascript
javascript:void(0)点击登录没反应怎么解决
2015/11/13 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
2016/06/28 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
COM组件中调用JavaScript函数详解及实例
2017/02/23 Javascript
vue服务端渲染缓存应用详解
2018/09/12 Javascript
序列化模块json代码实例详解
2020/03/03 Javascript
Python中装饰器高级用法详解
2017/12/25 Python
Python实现的各种常见分布算法示例
2018/12/13 Python
Python3从零开始搭建一个语音对话机器人的实现
2019/08/23 Python
Python 共享变量加锁、释放详解
2019/08/28 Python
Python 爬虫的原理
2020/07/30 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
2020/10/22 Python
python基于pexpect库自动获取日志信息
2021/02/01 Python
html5 浏览器支持 如何让所有的浏览器都支持HTML5标签样式
2012/12/07 HTML / CSS
意大利在线购买隐形眼镜网站:VisionDirect.it
2019/03/18 全球购物
香港家用健身器材、运动器材及健康美容仪器专门店:FitBoxx
2019/12/05 全球购物
linux下进程间通信的方式
2014/12/23 面试题
论文诚信承诺书
2014/05/23 职场文书
服装设计专业自荐信
2014/06/17 职场文书
高中学生会竞选演讲稿
2014/08/25 职场文书
《周恩来的四个昼夜》观后思想汇报范文两篇
2014/09/10 职场文书
2014年党员整改措施范文
2014/09/21 职场文书
节水倡议书
2015/01/19 职场文书
离婚上诉状范文
2015/05/23 职场文书
学生安全责任协议书
2016/03/22 职场文书
Go语言 详解net的tcp服务
2022/04/14 Golang