Python Django:模板中的request.session
我正在尝试在Django模板(使用TemplateResponse)中使用{{request.session.something}}工作 以下是我迄今为止发现的一些信息:Python Django:模板中的request.session,python,django,Python,Django,我正在尝试在Django模板(使用TemplateResponse)中使用{{request.session.something}}工作 以下是我迄今为止发现的一些信息: 首先,我的设置(django 1.9)中包含了“django.template.context_processors.request” 如果我从django.shortcuts使用render,那么{{request.session.something}}在模板中完全可以工作 我需要使用TemplateResponse,因为
- 首先,我的设置(django 1.9)中包含了“django.template.context_processors.request”
- 如果我从django.shortcuts使用render,那么{{request.session.something}}在模板中完全可以工作
- 我需要使用TemplateResponse,因为我有一个中间件,需要调用“process\u request”和“process\u template\u response”(如果我记得的话,“process\u template\u response”不适用于来自django.shortcuts的渲染)
任何帮助都将不胜感激 如果您使用的是基于类的视图,则可以创建如下函数
def get_session_thing(self):
x = self.request.session.thing
#stuff
return str(x)
然后在模板中,您可以执行以下操作
{{ view.get_session_thing }}
请显示视图代码。我不确定您是否正确使用tamplate response,因为我以前没有使用过它,但您可以像视图中的任何其他变量一样,将会话数据添加到请求上下文字典中,并将其传递给render,模板可以访问它。您的模板无法访问请求会话。将尝试在中间件中执行此操作。。。
{{ view.get_session_thing }}