최근에 내 장고 앱의 로그 아웃 기능이 손상된 것으로 나타났습니다. 나는 그것이 과거에 효과가 있었다고 믿지만 지금은 왜 효과가 없는지 알 수 없다. 내 설정이다로그 아웃 후 Django 세션이 삭제되지 않음
:
index.html을 :
...
{% if request.user.is_authenticated %}
<a style="position: absolute; top: 0; left: 0;" href="{% url 'auth_logout' %}">Logout</a>
{% else %}
<a style="position: absolute; top: 0; left: 0;" href="{% url 'auth_login' %}">Login</a>
{% endif %}
...
urls.py :
...
from django.contrib.auth import views as auth_views
...
urlpatterns = [
...,
url(r'^accounts/logout/$', auth_views.logout, name='auth_logout'),
url(r'^accounts/login/$', auth_views.login, name='auth_login'),
...
]
템플릿 :
login.html :
{% extends 'simple_logo_base.html' %}
{% block content %}
<div class="row">
<div class="col-md-3"></div>
<div class="col-md-6">
<h2>Login</h2>
{% if next %}
<form action="/accounts/login/?next={{next}}" method="post" >
{%else%}
<form action="/accounts/login/" method="post" >
{% endif %}
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
</div>
<div class="col-md-3"></div>
</div>
{% endblock %}
logout.html :
"simple_logo_base.html는"로고를 포함하는 사업부와 단지 일반 HTML 구조{% extends 'simple_logo_base.html' %}
{% block content %}
<h2 class="text-center">Logged out</h2>
{% endblock %}
.
문제 : 로그인이 완벽하게 작동합니다. 제한된 index.html 페이지에 액세스하려고하면 로그인 페이지로 리디렉션되고 로그인 할 수 있으며 제한된 페이지에 액세스 할 수 있습니다.
일단 로그인하고 "로그 아웃"버튼을 클릭하면 (위 참조) logout.html 페이지로 리디렉션되지만 index.html로 돌아갈 수 있으며 아직 로그됩니다 in.
따라서 데이터베이스의 "django_sessions"테이블을보고 세션이 절대로 삭제되지 않는 것으로 나타났습니다. 수동으로 삭제하면 index.html에 액세스 할 때 다시 로그인 페이지로 리디렉션됩니다.
내가 뭘 잘못하고 있니? 무엇이 문제 일 수 있습니까?
최근에 장고 1.10으로 업그레이드하고 내 프로젝트에 캐싱 프레임 워크를 추가했습니다. 이러한 변화와 관련이있을 수 있습니까?