Django Logout Метод Get не работает при попытке использовать метод Post
Я пытаюсь построить простой механизм входа-выхода с помощью Django. Вход в систему уже работает нормально. Ниже приведены соответствующие фрагменты кода:
project_name/main/urls.py:
from django.contrib.auth import views as auth_views
urlpatterns = [
# ...
path('accounts/logout/', auth_views.LogoutView.as_view(), name='logout'),
]
project_name/templates/registration/logged_out.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Logged out</title>
</head>
<body>
<form method="post" action="{% url 'logout' %}">
{% csrf_token %}
<p>Logged out!</p>
<a href="{% url 'login' %}">Click here to login again.</a>
</form>
</body>
</html>
У меня есть элемент href в project_name/templates/profile.html, который ведет к выходу из системы:
<p><a href="{% url 'logout' %}">Logout</a></p>
Но когда я нажимаю на него, то получаю следующую ошибку: Method Not Allowed (GET): /accounts/logout/ Метод не разрешен: /accounts/logout/
Я совсем запутался, потому что атрибут method в элементе формы в logged_out.html явно "post". Я просмотрел предыдущие вопросы, и ни в одном из них не было такой проблемы. Не мог бы кто-нибудь любезно объяснить мне, что происходит? Заранее спасибо.