0

我是 Django 的新手,我正试图让注销工作......

我已经安装了一个名为 Django-Registration 的应用程序。

我的问题是我可以注销,但页面没有刷新,我必须在注销后按 F5 才能看到未登录用户的页面。

我所做的如下:

urls.py,添加到 urlpatterns:

url(r'^logout/$', 'django.contrib.auth.views.logout', {'next_page': '/'}, name='auth_logout'),
url(r'^logout/(?P<next_page>.*)/$', 'django.contrib.auth.views.logout', name='auth_logout_next'),

在模板中,我有以下代码:

{% if request.user.is_authenticated %}
    <p>Welcome {{ request.user.username }}. <a href="{% url auth_logout_next 'directorio' %}">Logout</a></p>
{% else %}
    <p>Welcome. Please <a href="/accounts/login/">login</a> or <a href="/accounts/register/">register</a></p>
{% endif %}

当我单击注销时,我在屏幕上看不到这个:

<p>Welcome. Please <a href="/accounts/login/">login</a> or <a href="/accounts/register/">register</a></p>

如果我使用 F5 刷新页面,我只会看到此文本。

我在这里缺少什么?

请给我一个线索。

此致,

4

2 回答 2

0

尝试更改 url 模式的顺序 - auth_logout_next 应该在 auth_logout 之前。

于 2011-08-20T22:22:25.007 回答
0

尝试这个:

<a href="{% url auth_logout_next %}/directorio/">Logout</a>
于 2011-08-20T11:10:35.767 回答