我在Django中使用python-social-auth允许特定url名称的gmail用户登录到一个网页。我有一个基本.html带有导航栏的页面,导航栏具有:
#base.html
<div id="navbar">
<ul>
<li>
<img src="{% static "images/thumbnail.jpg" %}" alt='' style="width:48px;height:48px"/>
</li>
<li>
Navbar would go here!
</li>
{% if user.is_authenticated %}
<li>
Hello, {{ user.get_full_name|default:user.username }}!
</li>
<li>
<a href="{% url 'auth:logout' %}?next={{ request.path }}">Logout</a>
</li>
{% else %}
<li>
<a href="{% url 'social:begin' 'google-oauth2' %}?next={{ request.path }}">Login</a>
</li>
{% endif %}
</ul>
用户登录后,会被重定向到主页,该导航栏会显示正确的内容。但是,当我导航到扩展基本.html模板中,导航栏不返回用户名/用户名和注销链接,而是只显示登录链接。当我单击登录链接并重新选择相同的电子邮件时,它会按预期转发到/logged-in/上。用于验证用户是否已登录的正确模板标记是什么?你知道吗
第二个视图可能没有使用RequestContext(或
render
快捷方式),因此user
变量没有被传递到上下文。你知道吗相关问题 更多 >
编程相关推荐