CR_*_*ris 3 django django-templates
我有一个视图,并登录用户:
def login_user(request):
c = {}
c.update(csrf(request))
username = password = ''
if request.POST:
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
if user is not None:
if user.is_active:
login(request, user)
c.update(user(request))
return redirect('/module/')
else:
return redirect('/inactive/')
else:
return redirect('/failure/')
return render_to_response('core/auth.html',c)
Run Code Online (Sandbox Code Playgroud)
这正确登录用户,因为我可以访问django管理页面,如果我在我的超级用户.
登录并重定向后,我想在屏幕上显示用户名,目前我正在使用
{% if user.is_authenticated %}
<p class="navbar-text pull-right">Welcome, {{ user.username }}. Thanks for logging in.</p>
{% else %}
<p class="navbar-text pull-right">Welcome, new user. Please log in.</p>
{% endif %}
Run Code Online (Sandbox Code Playgroud)
但它似乎总是相信用户没有登录.任何帮助将不胜感激.
编辑:这是我的模板上下文处理器
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.tz",
"django.contrib.messages.context_processors.messages",
"django.core.context_processors.request",
)
Run Code Online (Sandbox Code Playgroud)
您是否尝试过向模板发送RequestContext对象?
return render_to_response('core/auth.html', c, context_instance=RequestContext(request))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4466 次 |
| 最近记录: |