该观测功能:Django的login_required通行证但随后user.is_authenticated在模板失败(??)
@login_required
def dashboard(request):
from myproject.myapp.models import UserProfile
k = UserProfile.objects.get(user=request.user.pk).known
return render_to_response('dashboard.html', {'KNOWN': k, , context_instance=RequestContext(request))
传递给这个模板:
{% if user.is_authenticated %}
{{ user.username }}
{% else %}
Login link
{% endif %}
{{ KNOWN }}
- 我已经登录。
- 页面不会重定向到LOGIN_URL(因此@login_required认为我登录了我猜)
- {{KNOWN}}
- {{user.username}}不会出现
这怎么可能呈现完全确定?当然,如果login_required能够工作,并且设法抓住已知,那么用户必须在某处存在?
我该如何调试?
:-)
更新: 如果我删除:
TEMPLATE_CONTEXT_PROCESSORS = ('django.core.context_processors.request',)
从设置,它的工作原理。
但是,通过删除它,不会加载在模板中使用{{request.get_full_path}}的其他页面。
Eeek。
更新2:
TEMPLATE_CONTEXT_PROCESSORS = (
"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.request",)
如果你只需要添加上自己的请求行,它禁用所有这些都是默认其他人。 D'哦!
更新3:认为可以解决它,遗憾的是仍然无法正常工作。
UPDATE 4:斑点错字其他地方,可以证实,马克·拉文的答案固定它:)
这个工程!谢谢。 – LittleBobbyTables 2012-03-01 17:19:27