【发布时间】:2023-03-29 08:49:01
【问题描述】:
我为已登录用户和已注销用户显示相同的主页。但变化是在导航栏中。登录后会显示用户名。注销后不会显示任何内容。如果我注销并单击后退按钮,我会看到后一页显示(即带有用户名的页面)。我搜索了一下,发现关于it的问题很少。
但是有装饰器用于防止注销的用户回来。这样该页面将被阻止再次加载。但是在这里,当我为两个用户显示相同的页面时,如何完成它?如何防止导航栏在注销并单击返回按钮时显示用户的用户名。
我的导航栏代码::
{% if request.user.is_authenticated %}
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">{{ request.user.username }}</a>
<ul class="dropdown-menu" role="menu">
<li><a href="{% url 'profile' request.user.username %}">Profile</a></li>
<li><a href="{% url 'logout' %}">Logout</a></li>
{% else %} {% ifequal request.path '/accounts/login/' %}
<li><a href="{% url 'signup' %}">Sign Up</a></li>
{% else %}
<li><a href="{% url 'login' %}">Login</a></li>
{% endifequal %}
</ul>
</li>
{% endif %}
更新:
我的主页视图是
class HomeView(TemplateView):
template_name = "home/home.html" # same template for login and logout
urls.py 是
urlpatterns = [
url(r'^$', HomeView.as_view(), name="home"),
]
我正在使用django.contrib.auth.urls 进行登录和注销操作
提前致谢!
【问题讨论】:
-
您在这里没有提供足够的上下文。但我认为您的注销页面不会重定向到“注销后”或“再见”页面。推荐的模式是什么
-
谢谢@e4c5 你能详细说明一下吗?你在问哪个上下文???。我说过,在注销后点击返回,用户可以看到登录的导航栏。你能提供一些关于“注销后”的信息吗??
-
我不是在谈论 django 上下文。您没有提供足够的代码片段(如您的观点等)来得出明确的结论。
-
@e4c5 我更新了内容可以吗?
标签: python django django-views