#!SESSION_SAVE_EVERY_REQUEST = True      设置根据最后一次操作设置登录超时时间
#!SESSION_EXPIRE_AT_BROWSER_CLOSE = True 设置是否关闭浏览器session 过期
#上面的在setting 里设置 from django.shortcuts import render,redirect,HttpResponse #登录页面
def login(request):
if request.method == 'GET':
return render(request,'logins.html')
elif request.method == "POST":
user = request.POST.get('user')
pwd = request.POST.get('pwd')
if user == 'root' and pwd == "123":
#生成随机字符串
#写到用户浏览器cookie
#保存到session
#在随机字符串对应 相对应的字典 request.session['username'] = user
request.session['is_login'] = True if request.POST.get('rmb',None) == '1':
#设置登录超市时间
request.session.set_expiry(10) return redirect("/app01/index/")
else:
return render(request,'logins.html') #登录成功后返回
def index(request):
#如果登录后返回页面 否则返回'请登录后访问'
    if request.session.get("is_login",None):
return render(request,'login.html',{'username' :request.session['username']})
else:
return HttpResponse('请登录后访问') #登录注销
def logout(request):
#清除当前session
request.session.clear()
return redirect("/app01/session/") ------------------------------------------------------------------------------------------------------------------------------------------------------ 登录模板:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/app01/session/" method="post">
{% csrf_token %} <input type="text" name="user" />
<input type="text" name="pwd" />
<input type="checkbox" name="rmb" value="1"> 10秒免登录
<input type="submit" value="提交"> </form> </body>
</html> 返回模板:
<h1>欢迎登录:{{ username }},{{ request.session.username }}</h1>
<div style="height: 30px;width: 200px;background: #2ec0f6;text-align: center;line-height: 30px"><a href="/app01/logout/" style="font-size: 20px">注 销 </a></div>

django session 的简单操作的更多相关文章

  1. Java中对session的简单操作

    1.jsp中操作session <% String name=(String)request.getSession().getAttribute("username"); / ...

  2. Django session相关操作

    Django session 是存储在数据库中的所以要先跟数据库建立连接 本连接有Django跟数据库建立连接的操作:https://www.cnblogs.com/Niuxingyu/p/10296 ...

  3. 基于django的自定义简单session功能

    基于django的自定义简单session功能 简单思路: 1.建立自定义session数据库 2.登入时将用户名和密码存入session库 3.将自定义的随机session_id写入cookie中 ...

  4. django session

    上周一个新的应用场景,带出来了关于django session管理的问题. 公司的另一个App以Widget的形式嵌入我们的页面,就是我们提供一些url,另一个App通过iframe的形式嵌入这些ur ...

  5. Django session 详解-part II-session

    Django中的session是一个高级工具,它可以让用户存储个人信息以便在下次访问网站中使用这些信息.session的基础还是cookie,但是它提供了一些更加高级的功能.请看下面的一个例子: 使用 ...

  6. 【Django】Django model与数据库操作对应关系(转)

    Django对数据库的操作分用到三个类:Manager.QuerySet.Model. Manager的主要功能定义表级方法(表级方法就是影响一条或多条记录的方法),我们可以以models.Manag ...

  7. ZooKeeper系列3:ZooKeeper命令、命令行工具及简单操作

    问题导读1.ZooKeeper包含哪些常用命令?2.通过什么命令可以列出服务器 watch 的详细信息?3.ZooKeeper包含哪些操作?4.ZooKeeper如何创建zookeeper? 常用命令 ...

  8. django初探-创建简单的博客系统(二)

    上篇django初探-创建简单的博客系统(一)已经记录了Django实现博客的发布的整个过程,接下来继续说明博客标题和内容的显示. 显示博客详细 将博客内容保存到数据库还不是发布博客的终极目的,博客一 ...

  9. TensorFlow与OpenCV,读取图片,进行简单操作并显示

    TensorFlow与OpenCV,读取图片,进行简单操作并显示 1 OpenCV读入图片,使用tf.Variable初始化为tensor,加载到tensorflow对图片进行转置操作,然后openc ...

随机推荐

  1. Exception,标准异常总结

    常见异常种类:                                                                                  

  2. windows文件服务器的磁盘空间挂载在linux目录下使用

    mount -t cifs //filesystem/serverbackup/SqlBackup/   /data/sqlbackup  -o username=sqlbackup.meizu.co ...

  3. 团队-爬虫豆瓣top250项目-模块开发过程

    项目托管平台地址:https://github.com/gengwenhao/GetTop250.git 开发模块功能: "get_info()单个页面的爬取"功能,开发时间:15 ...

  4. 蓝牙协议分析(10)_BLE安全机制之LE Encryption

    1. 前言 前面文章介绍了两种BLE的安全机制:白名单[4]和LL privacy[3].说实话,在这危机四伏的年代,这两种“捂着脸讲话(其它人不知道是谁在讲话,因而不能插话.不能假传圣旨,但讲话的内 ...

  5. VS Code + NWJS(Node-Webkit)0.14.7 + SQLite3 + Angular6 构建跨平台桌面应用

    一.项目需求 最近公司有终端桌面系统需求,需要支持本地离线运行(本地数据为主,云端数据同步),同时支持Window XP,最好跨平台.要求安装配置简单(一次性打包安装),安装包要小,安装时间短,可离线 ...

  6. ES6 promise学习笔记 -- 基本用法

    ES6 规定,Promise对象是一个构造函数,用来生成Promise实例. 下面代码创造了一个Promise实例. const promise = new Promise(function(reso ...

  7. 王者荣耀交流协会 -- 第5次Scrum会议

    Scrum master : 任思佳 要求1 : 工作照片 照片由王超同学拍摄 ,王露芝同学(外援)没有参加本次会议. 要求2 : 时间跨度:2017年10月17日 18:00 - 18:25 共计2 ...

  8. linux do{} while(0)

    do{}while(0) 在linux中,经常会看到do{}while(0)这样的语句,许多人开始都会疑惑,认为do{}while(0)毫无意义,因为它只会执行一次,加不加do{}while(0)效果 ...

  9. Python全栈之路----函数

    基本介绍 定义:函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 编程中的函数在英文中有很多不同的叫法:在BASIC中叫做subroutine(子过程或 ...

  10. day05 集合

    今日进度(数据类型) 集合 内存相关 深浅拷贝 1.集合表示 1.无序 2.不重复 3.hash查找 #问题:v={}表示? set: v1=set()#空集合 v1={1,2,3,4,5} dict ...