Django logged_out.html проблема со страницей, которая перенаправляет страницы администрирования

#python #django #django-authentication

#python #django #django-аутентификация

Вопрос:

 http://127.0.0.1:8000/accounts/login/
  

Эта страница создана успешно и работает нормально:

И проблема с этими страницами: http://127.0.0.1:8000/accounts/logout/ Эта страница перенаправляет меня на страницы администрирования Django с сообщением о повторном входе в систему, но я не хочу этого.

Я разместил свой HTML-файл в

 ..templates/registration/logged_out.html 
  

И несколько раз проверял орфографическую ошибку, чтобы понять, почему не работает.

Мои файлы urls:

 from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('catalog.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
]

urlpatterns  = static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
  

и мой logged_out.html является:

 {% extends 'base.html' %}


{% block content %}
  <p>Logged out!</p>
  <a href="{% url 'login' %}">Click here to login again.</a>
{% endblock %}
  

Кто-нибудь может сказать мне, что с этим не так? Как это исправить?

Комментарии:

1. взгляните на LOGOUT_REDIRECT_URL в ваших настройках, вот документация docs.djangoproject.com/en/2.1/ref/settings/#logout-redirect-url

Ответ №1:

Если вы определили это LOGOUT_REDIRECT_URL в своих настройках, то LogoutView произойдет перенаправление на нее.

Проверьте, определили ли вы LOGOUT_REDIRECT_URL в своих настройках, и удалите ее, если она у вас есть.

Комментарии:

1. Я добавил это: STATIC_URL = ‘/ static /’ LOGIN_REDIRECT_URL = ‘/’ LOGOUT_REDIRECT_URL = ‘LogoutView’

2. но это показывает это сообщение: не найдено ни одного соответствия в / accounts / logout / Reverse для ‘LogoutView’. ‘LogoutView’ не является допустимой функцией просмотра или именем шаблона.

3. Это не то, что я предлагал. Если вы установите LOGOUT_REDIRECT_URL = 'LogoutView' , то LogoutView попытается изменить этот URL и перенаправить на него. Я попросил вас удалить это из настроек, или вы можете установить LOGOUT_REDIRECT_URL = None .

4. Я установил: LOGOUT_REDIRECT_URL = None и он перенаправляет страницы администрирования

5. Это не перенаправляет меня на мою собственную страницу