把session存储到redis数据库,需要在setting中配置

django-redis 中文文档

http://django-redis-chs.readthedocs.io/zh_CN/latest/#cache-backend

在使用django1.6+的时候,默认会吧session存放在数据库django_session表里。
如果要把session放在内存中,就应该在settings.py 中配置
SESSION_ENGINE = "django.contrib.sessions.backends.cache"

使用的时候:

新增:request.session["userName"] = "Tom"
查询:name = request.session["userName"]
删除:del request.session["userName"]

好,那更复杂一点的数据该如何存储呢:比如一个对象Student。
按照其他语言的习惯,比如java和C#,按理说应该是:

stu = Student(name="Tom",age = 12)
新增:request.session["user"] = stu
查询:stu = request.session["user"]
删除:del request.session["user"]

存放对象的时候,如果session是存放在内存中,那么是没有问题的。但是一旦存放在数据库中就不行了。
为何?
因为存放在数据库中的东西,是需要能够进行json序列化的。
Student是不能被序列化json的。需要把Student转换为字典,没错,是字典
{“name”:“Tom”,“age”:12}
这样才能存放在数据库session中。

原文地址: https://blog.csdn.net/shilei123456789666/article/details/79116271

Django session存储到redis数据库的更多相关文章

  1. 将 flask 中的 session 存储到 SQLite 数据库中

    将 flask 中的 session 存储到 SQLite 数据库中 使用 flask 构建服务器后端时,常需要在浏览器端存储 cookie 用于识别不同用户,根据不同的 cookie 判断出当前请求 ...

  2. php session 存储到redis

    PHP 的会话默认是以文件的形式存在的,可以配置到 NoSQL 中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪! 配置方式如下: 方法一:修改 php.ini 的设置 1 2 session ...

  3. shiro-redis实现session存储到redis

    shiro-redis开源项目已经很好的将shiro与redis整合到一起,实现了将session存入redis,可以方便的用于session共享实现集群部署. git地址:https://githu ...

  4. Django框架中session存储到redis中的配置

    本文链接:https://blog.csdn.net/linqunbin/article/details/94786313————————————————版权声明:本文为CSDN博主「linqunbi ...

  5. 配置 PHP 的 Session 存储到 Redis

    PHP 的会话默认是以文件的形式存在的,可以配置到 NoSQL 中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪! 配置方式如下: 方法一:修改 php.ini 的设置 session.sav ...

  6. php Session存储到Redis的方法

    当然要写先安装php的扩展,可参考这篇文章:Redis及PHP扩展安装 修改php.ini的设置 复制代码 代码如下: session.save_handler = redis session.sav ...

  7. PHP系列 | Session 存储在Redis

    默认是文件存储 修改php.ini的设置 session.save_handler = redis session.save_path = “tcp://127.0.0.1:6379″ 如果Redis ...

  8. PHP如何配置session存储在redis

    当网站用户量增多的时候,正常的session存取就会出现有点慢的问题,如果提高速度呢. 我们可以使用redis去保存session的会话信息. PHP的会话默认是以文件的形式存在的,可以配置到NoSQ ...

  9. PHP 更改session存储方式为Redis

    前言: 服务器默认的session存放方式是file.当客户端发送请求带有PHPSESSID时是顺序的去比对session存储文件,如果有5000个session文件,那就有可能需要比对4998次那么 ...

随机推荐

  1. vue_v-for_遍历数组_遍历对象

    1. v-for 遍历数组 html <div id="test"> <ul> <li v-for="(p, index) in perso ...

  2. 2018-2019-1 20189210 《Linux内核原理与分析》第三周作业

    一.学习笔记 计算机的"三大法宝" 1.程序存储计算机. 2.函数调用对栈.堆栈的作用是:记录函数调用框架.传递函数参数.保存返回值地址.提供函数内部局部变量的存储空间.函数调用堆 ...

  3. jsp页面第一句话报这个错Syntax error, insert "}" to complete

    前段时间做了个项目jsp页面出现了Syntax error, insert "}" to complete错误,是说少了个“}”花括号,错误是在第一行,删了第一行还是会有,错误也不 ...

  4. python函数详解

    ''' 函数:是一段可以重复调用的代码,通过输入的参数,返回对应的结果 名字绑定的机制,把实际参数的值与形式参数的值绑定到一起 1.函数调用的时候,实际参数的值的顺序与形式参数的顺序一一对应 2.当在 ...

  5. python语法_集合

    集合:不同的元素(不可hash)组合在一起的就叫做集合,去掉重复的,以空字符返回,无序的 可以分为可变集合和不可变集合(frozenset) 创建: s = set('gm gyx') print(s ...

  6. js上课笔记

    Html 结构化CSS 样式JavaScript 行为交互01.JavaScript基础02.JavaScript操作BOM对象03.JavaScript操作DOM对象 *****04.JavaScr ...

  7. C++接口与实现的抽象分离

    IPerson.h #ifndef I_PERSON_H_ #define I_PERSON_H_ #include <string> #include <ostream> c ...

  8. selenium如何操作HTML5的画布canvas上的元素

    话不多少,上图如下,下图红色框内是一个html5的画布,我们要像操作右上角的保存和数据视图的时候是无法公共selenium的普通定位操作到的,那该怎么办呢? 我们先new一个Selenium的acti ...

  9. webrtc如何进行错误恢复

    视频的压缩方法:(三种帧) 为了视频尽可能的保持高效,视频数据通过不同的编码进行压缩.以帧为单位进行压缩,按照压缩中的不同作用可分类为:内帧(Intra-frames,I帧),预测帧(Predicti ...

  10. python基础1 print()函数

    一切程序的开始都是由print('hello world') 了解print()函数 输出python之歌 print(''' 优美胜于丑陋明了胜于晦涩简洁胜于复杂复杂胜于凌乱扁平胜于嵌套间隔胜于紧凑 ...