django---session/redis/隔行换色

(一)引入session

Session与Cookie是紧密相关的。 Session的使用要求用户浏览器必须支持Cookie,如果浏览器不支持使用Cookie,或者设置为禁用Cookie,那么将不能使用Session。

Session信息对客户来说,不同的用户用不同的Session信息来记录。当用户启用Session时,ASP自动产生一个SessionID.在新会话开始时,服务器将SessionID当做cookie存储在用户的浏览器中。

session相比较cookie来说比较安全

我的理解:如果你是今天登陆这个网站(前提是你已经注册过这个网站),

然后点击登陆,登陆成功的话  这行代码会自动生成一个cookie,并且为你设置一个对应得session.id。此时当你登陆成功的话就有两个cookie,一个是你自己设置的,一个是系统自动生成的。

当你再次登陆这个网站打开任何一个界面的时候,系统会自动匹配你的sessionid,

注意:自己设置的cookie 健名一定不要和sessionid重名,这样第二次进入系统的时候,内部会匹配不到

(二)代码

request.session['cueernt']=username            -----引入session[健]=需要记录的内容

print('session:%s'%request.session.get('cueernt'))----在同一个app下的其他方法里打入这句话可以获取用户名

(三)判断你的session id 是否建构成功(写一个判断)

def test01(request):

    reet = request.session.get('cueernt')

    if not reet:

        return redirect('/user/login')

return render(request, 'user/success.html')

(四)引入redis

1.与其他用户状态保存方案比较

一般开发中用户状态使用session或者cookie,两种方式各种利弊。

Session:在InProc模式下容易丢失,并且引起并发问题。如果使用SQLServer或者SQLServer模式又消耗了性能

Cookie则容易将一些用户信息暴露,加解密同样也消耗了性能。

Redis采用这样的方案解决了几个问题,

1.Redis存取速度快。

2.用户数据不容易丢失。

3.用户多的情况下容易支持集群。

4.能够查看在线用户。

5.能够实现用户一处登录。(通过代码实现,后续介绍)

6.支持持久化。(当然可能没什么用)

7.相比直接在数据库里寻找session.id要快

自己理解:因为如果这个网站在这一时刻有很大的浏览量,每个用户都有属于自己的session.id,如果服务器每次都在数据库里面寻找的话会特别慢,所以直接加载到redis里面

(五)安装redis步骤

设置redis

第一步:安装pip install django-redis-sessions

第二步:配置settings.py文件

#redis缓存session

SESSION_ENGINE = 'redis_sessions.session'

SESSION_REDIS_HOST = '192.168.12.18'------IP地址

SESSION_REDIS_PORT = 6379

SESSION_REDIS_DB = 0

SESSION_REDIS_PASSWORD = ''----设置密码

SESSION_REDIS_PREFIX = 'session'

第三步:redis-cli   ----进入环境

如果不成功  输入sudo apt install redis-server

此时sessionID将存储在redis里面

(六)隔行换色

 {% if forloop.counter|divisibleby:'2'%}style='bakegroud-color:'red';'{%endif%}

能被2整除的都变成红色(用到了过滤器)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • (一)引入session Session与Cookie是紧密相关的。 Session的使用要求用户浏览器必须支持C...
    a荷包蛋阅读 423评论 0赞 0
  • 背景在HTTP协议的定义中,采用了一种机制来记录客户端和服务器端交互的信息,这种机制被称为cookie,cooki...
    时芥蓝阅读 2,495评论 1赞 17
  • 转自 :http://blog.csdn.net/taoff/articles/1921009.aspx 一、术语...
    stone_yao阅读 6,442评论 0赞 31
  • 小院 我想有一个小院 在我的家乡 不要多大 但要宁静 我想有这样一个小院 它的青色的砖墙上 长着毛茸茸的苔藓 像是...
    文渐阅读 264评论 0赞 0
  • 你不是救我于乱世的盖世英雄 我不是流泪于你心房的紫霞仙子 你,我 不过是寂寞星空里相遇的雨人 你来过 我心如镜湖便...
    江三妹阅读 231评论 5赞 1

友情链接更多精彩内容