django环境页面获取session的方法

      最近的项目中需要采用python的MVC框架——django,相比Java的MVC框架而言虽然显得有些稚嫩,但是作为C家族的web框架已经是突破性的跨越了。

 

      因为用惯了Java框架中的各种标签(特别是JSTL、OGNL等),所以在使用django时也希望可以用到类似的方法解决问题,起码来说,request、session等html的基础应用可以在页面中便捷的调用吧,可django的doc中并没有直接的说明,google百度了一下,多是提出此问题,但几乎没有正确的解答,郁闷了许久,决心在端午节休息时尽力尝试一下,终于有了解决方案,于是记下与大家分享一下吧。其实此调用的实现还是很简单的啊

 

试验环境:python2.6.6 + django1.31

 

1、单变量方式

xxx.py的某个方法中:

 

 

...
request.session['AAAA']='ABCD'
...
return render_to_response('yyy.html', {'session':request.session})
 

 

yyy.html:

 

...
{{ session.AAAA }}
...
 

 

2、 setter和getter方式 (Java的Bean,.net的Properties)

session_bean.py的定义:

 

class BeanTest():
    user_id = None
    
    def  __init__(self):
        self.data = []
    
    def set_user_id(self, user_id):
        self.user_id = user_id
        
    def get_user_id(self):
        return self.user_id
 

xxx.py的某个方法中:

 

from xxx.session_bean import BeanTest

  ...
  bean = BeanTest()
  bean.set_user_id("XXX123")
  request.session['bean']=bean
  ...
  return render_to_response('yyy.html', {'session':request.session})

 

yyy.html:

 

...
{{ session.bean.user_id }}
...
 

 

 

Django 4.x Session 会话使用示例和配置方法 会话是指从通信开始到结束的一系列过程,在Web应用程序中用于保留用户登录信息和状态。在Django中,会话通过在服务器端存储重要数据,并使用用户发送的cookie中的会话ID来识别用户。由于cookie中不包含实际数据,因此会话在安全性方面是可靠的。 阅读详情

相关推荐

全能扫描王的实现(python版本)- 目标检测图像矫正

全能扫描王python代码实现,可用于文件扫描或者是图像校正

搬砖猛女的啃书历程 5488

django中的cookie与session

浏览器中查看session。

2303_77327646的博客 490

2025数学建模美赛C题完整建模思路——奥运会奖牌榜的模型

2025数学建模美赛C题完整建模思路——奥运会奖牌榜的模型

Yilu264的博客 1万+

如何在Django模板中获取的session中存储的数据

以一个简单的实例来说明: 在视图文件中,添加一些测试代码: from django.shortcuts import render def test(request): request.session['username'] = 'hello world' return render(request, 'test.html') 新建一个test.html,添加以下测试代

念一生之爱 8022

在 Ansys Mechanical 中使用“螺栓工具”插件自动生成螺栓

在有限元分析 (FEA) 中,高效创建螺栓连接对于确保机械装配的结构完整性和性能至关重要。螺栓是连接组件不可或缺的一部分,它们在负载下的精确建模会影响整个系统。快速高效的螺栓建模使工程师能够快速优化设计,满足紧迫的期限,并通过为其他关键设计任务释放资源来提高整体生产力。此外,螺栓建模的精度可以最大限度地降低模型创建过程中出错的风险,这对于获得可靠和准确的分析结果至关重要。因此,在 FEA 中快速且无错误地创建螺栓连接对于高效、可靠和成功的工程结果至关重要。

jkh920184196的博客 3101

ESP32Servo库驱动SG90舵机:从入门到精准控制

本文详细介绍了如何使用ESP32Servo库驱动SG90舵机,从硬件连接到软件环境搭建,再到编写示例程序实现精准控制。内容涵盖库安装、基础驱动代码解析、舵机校准方法以及平滑运动控制,帮助开发者快速掌握ESP32控制舵机的核心技能,并提供了电源管理、信号抗干扰等实用避坑指南。

ik678901的博客 897

34.Django操作session(超详细)

如果用户已经登录,则服务器会在 cookie中保存一个 sessionid,下次再次请求的时候,会把该 sessionid携带上来,服务器根据 sessionid在session库中获取用户的session数据。但存储在服务器也有一定的弊端,就是会占用服务器的资源,但现在服务器已经发展至今,一些 session信息还是绰绰有余的。不同的是,cookie是存储在本地浏览器,session是一个思路、一个概念、一个服务器存储授权信息的解决方案,不同的服务器,不同的框架,不同的语言有不同的实现。

wm1634208243的博客 220

用Pixhawk 2.4.8和PX4 1.13,从零搭建你的第一支无人机编队(附避坑清单)

本文详细介绍了如何使用Pixhawk 2.4.8飞控和PX4 1.13固件从零搭建低成本无人机编队系统。涵盖硬件选型、固件配置、多机通信和编队飞行逻辑开发的全流程,特别针对学生和爱好者提供实战验证的避坑方案,帮助实现多机协同飞行。

weixin_27219587的博客 402

Django会话控制-Session

Django的内置的会话控制简称Session,它可以存储用户的数据信息。当用户首次访问网站时,网站的服务器自动创建Session对象,相当于该用户在网站的一个身份凭证。当用户在网站页面跳转时,存储在Session对象中的数据不丢失。只有Session过期或被清理时,服务器才将Session中存储的数据清空并终止该Session。在创建Django项目时,Django已默认启用Session功能。

lrf0122的博客 639

1、Ovirt 开源虚拟化平台安装

Ovirt虚拟化Node和Engine安装

大鱼 6266

8卡H20运行DeepSeek-V3-0324性能和推理实测

最近在一台 8卡H20 机器上,先后部署了 DeepSeek-R1-AWQ (671B)和最新的 DeepSeek-V3-0324 (685B) ,测试了下性能和数学问题跑分。服务器由火山引擎提供。

weixin_53138109的博客 3364

Python 框架学习 Django篇 (五) Session与Token认证

需要验证请求的cookie里面是否有sessionid,并且检查session表,看看是否存在session_key为该sessionid 的一条记录,该记录的数据字典里面是否 包含了 usertype 为 mgr 的 数据,我们可以把前面数据库增删改查视为我们的主页,只需要从主页函数调用之前去做下检查即可。

默子昂 3628

滑模控制算法——基本原理(附MATLAB程序)

选择一个滑模面和是设计参数。是滑模面函数,通常我们希望系统状态在的面上滑动。我们以一个简单的二阶系统作为示例,其状态空间方程为:是系统矩阵是输入矩阵是输出矩阵假设我们的系统如下:滑模控制算法的核心在于设计合适的滑模面和控制律,并分析系统在滑模面上的稳定性。通过上述公式和步骤,可以有效地设计滑模控制器,以处理具有非线性和不确定性的动态系统。总的来说,滑模控制算法因其鲁棒性和灵活性在处理复杂控制问题中表现出色,但在实际应用中需要精心设计以克服抖振现象和其他潜在问题。BuxuABDC。

qq_35623594的博客 2万+

django的session机制详解

Session的初始化,保存,删除,验证前言运行环境Session的初始化(SessionMiddleware中间件)Session的验证(AuthenticationMiddleware中间件)Session对应数据库的数据加载、验证当前登录的User对象Session的保存,回写到客户端(SessionMiddleware中间件)Session的删除对于首次登录的用户 前言 面向需要验证用户合...

卡萝尔的博客 1915

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

django:session会话控制

当用户第一次访问某网站时,网站服务器就在内存中开辟一块空间来创建session对象,用于在“无状态”的HTTP的常会话中存储用户信息。能使用户在同一浏览器的不同页面间跳转时保持信息一致。参考。session会在失效或过期时被清理。 django默认开启session,由settings.py中MIDDLEWARE的’django.contrib.sessions.middleware.SessionMiddleware’进行状态判断,并根据判断结果调用settings.py中INSTALLED_APPS的’

dangfulin的博客 1745

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Django cookie 与 session

本文介绍了Django中的Cookie和Session机制及其应用。Cookie是存储在客户端浏览器的数据(通常<4KB),用于保存用户偏好;Session则存储在服务器端,通过session ID关联客户端,用于维护用户会话和登录状态。文章详细说明了如何配置Session中间件及相关参数,并提供了一个多表模型示例,其中Item模型通过created_by字段关联用户认证系统,展示了Cookie和Session在实际项目中的应用场景。关键点包括:Cookie与Session的区别、Django的Ses

likuoelie的博客 913

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Django中cookie和session

一、Cookie cookie及特点 Cookie是由服务器(网站)生成的,存储在浏览器端的键值对数据(通常经过加密) 在响应请求时,服务器会把生成Cookie数据发给浏览器,浏览器会自动保存(前提:浏览器开启了cookie功能) 浏览器请求服务器(网站)时,会自动上传该服务器(网站)生成的所有Cookie Cookie基于域名安全的。每个网站只能访问到自己生成的...

qq_33774445的博客 211

django之状态保持-使用redis存储session

关于redis安装,pip install django-redis-sessions,按照提示进行安装相关的服务端 和客户端. django版本1.8.2, Python版本2.7.12 1 进入虚拟环境h1 workon h1 2 创建一个项目test应用booktest django-admin startproject test 3 创建应用booktest 进入...

silence-cc的博客 3303

django项目中如何使用redis存储session信息

# 下载redis服务的包 pip install redis # 下载redis存储session的包 pip install django-redis-sessions==0.5.6 # 下面是settings.py文件中需要增加的配置项 # 设置redis存储session信息 SESSION_ENGINE = 'redis_sessions.session' # redis服务的...

weixin_42289273的博客 541

django session 会话

如何使用sessionDjango全面支持匿名session。会话框架允许您以每个站点访问者为基础存储和检索任意数据。它将数据存储在服务器端并提取Cookie的发送和接收。Cookie包含会话ID - 不是数据本身(除非您使用基于cookie的后端)。启用session¶会话通过一个中间件来实现。要启用会话功能,请执行以下操作:         编辑MIDDLEWARE设置并确保它       ...

xuanyugang的博客 764

第六章:django中的cookie与session

cookie req.set_cookie(key,vel,max_age = xx) session req.session[key] = vel session表的迁移 两种删除方法, session的管理类 clear 清空自己设置的 flush 直接把session删除

m0_46623754的博客 1628

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

官网: https://redis.io/ Redis安装教程: 建议安装目录放在/usr/local目录 wget http://download.redis.io/releases/redis-5.0.5.tar.gz tar xzf redis-5.0.5.tar.gz cd redis-5.0.5 make # 同时会自动执行make install make完后 redi...

linqunbin的博客 1841

Sherlock 怎么装:不想动系统 Python 时,pipx 与 Docker 怎么选

在共享服务器、无 root 权限或希望随时回滚的机器上装 Sherlock(按用户名跨 400+ 社交网络查账号的 OSINT 工具),核心决定就是 pipx 还是 Docker。结论先说:宿主机已有 Python 3.9+ 且装了 pipx,就用 `pipx` 一条命令;不想在宿主机落任何 Python 依赖、需要固定版本或团队要可复现,就用 Docker。两者都能让 `sherlock` 命令

gitblog_00671的博客 308

Django Session机制与Web安全实践解析

会话管理是Web开发中用户状态保持的核心机制,通过服务端存储和客户端Cookie的协同工作实现跨请求数据持久化。Django框架内置了完善的Session系统,支持数据库、缓存等多种存储引擎,并采用加密技术保障数据安全。在电商等高并发场景下,合理的Session存储方案选择能显著提升系统性能,如缓存方案可将响应时间控制在50ms内。同时,CSRF防护机制通过令牌验证和SameSite Cookie等策略,有效防御跨站请求伪造攻击。本文结合Django实战经验,深入剖析Session管理原理与安全实践,为开发

weixin_34274029的博客 426

django中使用redis保存session

我们可以把django的session存储在redis里面 安装包 pip install django-redis-sessions==0.5.6 注意要在django的虚拟环境中安装 (django_py3) python@ubuntu:~/Desktop/redis_django$ pip install django-redis-sessions==0.5.6 修改...

Enjolras_fuu的博客 2765

Django session源码阅读

欢迎光临我的博客背景 最近在做djnago开发时,遇到一个session问题,过程如下,第一个POST请求时,把数据存放在session,在第二次POST时,从session中读取数据,完成用户注册。在实际的环境中,发现有时第二次获取到的数据为空。初步的猜想是第一次和第二次请求间隔太短,数据还没有存进mysql,到时读取失败,带着这样的疑问,阅读了django session的源码。 django

piapiada的博客 511
上一篇: 凭什么要戴红领巾
下一篇: OS Cent 6.2 - 错误信息:Disk sda contains BIOS RAID metadata...
fdsa4321
博客等级 码龄20年 2粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值