2011-08-19 4 views
0

저는 장고를 처음 사용하고 있습니다. 로그 아웃을 시도하고 있습니다 ...장고 "로그 아웃"이 누락되었습니다.

장고 등록이라는 앱을 설치했습니다.

내 문제는 로그 아웃을 할 수 있지만 페이지가 새로 고쳐지지 않는다는 것입니다. 로그 아웃 한 후 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 %} 

을 클릭하면 로그 아웃 나는 sc reen :

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

페이지를 새로 고치는 데 F5 키를 사용하는 경우에만이 텍스트가 표시됩니다.

내가 여기에 누락 되었습니까?

실마리를주십시오.

최고 감사합니다,

답변

0

봅니다 URL 패턴의 순서를 변경 - auth_logout_next은 auth_logout 전에해야합니다.

+0

URL의 순서가 중요한 이유가 궁금합니다. – rofls

0

이 시도 :

<a href="{% url auth_logout_next %}/directorio/">Logout</a> 
+0

그런 식으로 일하지 마라. 그러나 이런 식으로 나가면 "Logout"일한다. 그러나 이것은 "httpd : // localhost/logout // directorio //"와 같은 링크를 만들고, 두 개의 (//)를 가지고 있습니다. 이 올바른지? –

관련 문제