Python Django

一次转发请求作用域。

会话作用域。

应用程序作用域

Session(一个模块)

在gjango里使用session

1、 installed_apps

2、 中间件。

 3.设置存储形式。

4、引用 resquest.session.

 

Django session 的设计原理

1如果用户是第一次请求

判断客户是否第一次请求,就看客户端ie是否保存session cookie。

创建session model

生成一个key session id 随机的一个字符串 uuid

Uuid是随机生成id永久不重复的字符串。保存到你的session_engine指定的位置。 保存到cookie中,在用户的浏览器中。

如果第二次以上的请求,用户端ie都会都会自动提交cookie到django,django中利用你的配置的sessionmiddleware中,间件激活session利用cookie中的sessionid到你的session_engine指定的位置读取session model并设置到request的session属性上。

正式因为这样的才能在你的view里面通过request.session中使用session能力。

Session本身就是一个dict字典

Session在存数据必须支持序列化json.

第一步:在pydlogsys/sittings.py中有没有 INSTALLED_APPS 'django.contrib.sessions'

第二步:在pydlogsys/sittings.py MIDDLEWARE 要有中间键'django.contrib.sessions.middleware.SessionMiddleware'

在设置存蓄形式按Ctrl+alt+r 输入migrate session 创建Django_session数据库


第四步:bloguser/views.py中修改登陆成功后的跳转路径

在bloguser/urls.py中修改 path('login',login),为 path('login',login,name='login'),

在数据库中的django_session表中留下记录,下次登陆就会显示你的信息

在templates/welcome.html中修改后显示‘退出’,未登陆显示‘登陆’

在bloguse/views.py中创建logout函数,在登陆成功后显示‘退出’,点退出的时候返回 welcome


创建连接

在bloguser/views.py中添加a和b两个函数

在bloguser/urls,py中添加路径

在templates/welcome.html中添加两个链接

在浏览器中输入http://127.0.0.1:8000/user/login


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值