Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:模板中的request.session_Python_Django - Fatal编程技术网

Python Django:模板中的request.session

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模板(使用TemplateResponse)中使用{{request.session.something}}工作

以下是我迄今为止发现的一些信息:

  • 首先,我的设置(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 }}