django:使用context_processor.request时无法登录admin

时间:2013-11-16 15:59:59

标签: django

当我使用它时:

TEMPLATE_CONTEXT_PROCESSORS = (
    'django.core.context_processors.request',
)

在我的settings.py中。

我无法登录,我收到此错误:

KeyError: u'user'

这是完整的stracktracek:http://dpaste.com/1467056/

我正在使用context_processor.request因为我想要这个:

<input type="hidden" name="action" id="action" value="{{ request.get_full_path }}">

以便在POST请求后返回(未修复)上一页。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您需要添加默认情况下存在的其余上下文处理器。在您的代码段中,您已删除所有其他上下文处理器,只需将其设置为request,这就是管理员无法正常工作的原因。

除了request处理器之外,您还应添加其余的默认上下文处理器:

TEMPLATE_CONTEXT_PROCESSORS = ("django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.request",
"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")

django settings reference列出了所有django设置的默认值。

相关问题