django.core.context_processors.request未添加

pis*_*hio 0 django request

这是在我的settings.py中定义的

TEMPLATE_CONTEXT_PROCESSOR = (
     "django.core.context_processors.request", # <- HERE
     "django.contrib.auth.context_processors.auth",
     "django.core.context_processors.debug",
     "django.core.context_processors.i18n",
     "django.core.context_processors.media",
     "django.core.context_processors.static",
     "django.core.context_processors.tz",
     "django.contrib.messages.context_processors.messages",
)
Run Code Online (Sandbox Code Playgroud)

这是在我的视图文件中:

def home(request):
     ctx = {}
     request.session['test'] = 1
     return render(request, 'home.html', ctx)
     # return render_to_response('home.html', ctx, 
     #                            context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)

如果我尝试从模板访问请求对象(例如{{ request.session.test }},未显示任何内容。Django调试工具栏显示django.core.context_processors.request未在CONTEXT_PREPROCESSOR 中添加。有什么帮助吗?

Ala*_*air 5

您缺少“ s”。您应该TEMPLATE_CONTEXT_PROCESSORS在设置文件中定义。