#!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. Angular2 NgModule 模块详解

    原文  https://segmentfault.com/a/1190000007187393 我们今天要学习的是Angular2的模块系统,一般情况下我们使用一个根模块去启动我们的应用,然后使用许多 ...

  2. vue 关于solt得用法

    solt 第一种用法 父组件 <templateSolt></templateSolt> <templateSolt> <p>slot分发了内容< ...

  3. Git 与SVN

    SVN 是集中式版本控制系统: 先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给 ...

  4. LINUX系统配置

    LINUX系统配置 Linux 安装jdk方法; Linux Tomcat 安装与配置 Linux redis 安装与配置 (例1) Linux redis安装配置(例2) NGINX 安装 Linu ...

  5. webStrom访问只一个很简单的html文件的时候显示local host无法访问。。

    直接从文件夹运行html没问题的,,,然后百度半天,,乱七八糟的答案, 1.谷歌商店安装 JB插件--插件地址 https://chrome.google.com/webstore/detail/je ...

  6. GoogLeNet 之 Inception-v1 解读

    本篇博客的目的是展示 GoogLeNet 的 Inception-v1 中的结构,顺便温习里面涉及的思想. Going Deeper with Convolutions:http://arxiv.or ...

  7. tofile和fromfile数组内建函数

    numpy教程:基本输入输出和文件输入输出Input and output 使用数组的方法函数tofile可以方便地将数组中数据以二进制的格式写进文件.tofile输出的数据没有格式,因此用numpy ...

  8. java.lang.ClassNotFoundException的解决方法

    java.lang.ClassNotFoundException的解决方法   出现这个问题的原因可能很多,但是最终原因都是部署的项目文件中没有这个类包. 那么出错的点在哪呢?逐一排除! 1.首先在项 ...

  9. ubuntu 16.04 更换源

    进入/etc/apt/ cd /etc/apt 在修改前先对 sources.list文件进行备份 sudo cp sources.list sources.list.bak 修改sources.li ...

  10. Linq分组查询统计

    这里介绍Linq使用Group By和Count得到每个CategoryID中产品的数量,Linq使用Group By和Count得到每个CategoryID中断货产品的数量等方面. 学经常会遇到Li ...