Django自动注销,并且在登录后它将保持在同一页面上

Django自动注销,并且在登录后它将保持在同一页面上,django,python-3.8,Django,Python 3.8,我是Django新手,使用Django 3.0.2。有时Django会自动注销,当我尝试登录我的网站时,它会停留在登录页面上,但会创建一个会话(我的意思是,我可以看到用户登录页眉和页脚后看到的所有按钮)。手动注销和登录时,我没有遇到此问题 如果其他人也遇到同样的问题,请提供帮助。提前感谢。您可以复制此内容-当然,您需要将“quizapp”更改为您的应用程序名称 此外,您需要创建正确的模板目录,并将“模板”添加到设置中的模板目录中 以下是我对django默认授权的实现,如下所述: 主站点URL.p

我是Django新手,使用Django 3.0.2。有时Django会自动注销,当我尝试登录我的网站时,它会停留在登录页面上,但会创建一个会话(我的意思是,我可以看到用户登录页眉和页脚后看到的所有按钮)。手动注销和登录时,我没有遇到此问题


如果其他人也遇到同样的问题,请提供帮助。提前感谢。

您可以复制此内容-当然,您需要将“quizapp”更改为您的应用程序名称

此外,您需要创建正确的模板目录,并将“模板”添加到设置中的模板目录中

以下是我对django默认授权的实现,如下所述:

主站点URL.py

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

urlpatterns = [
    path('', include('quizapp.urls')),
    path('admin/', admin.site.urls),
    path('accounts/', include('django.contrib.auth.urls')),
]+ static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
LOGIN_REDIRECT_URL  = '/'
模板/registration/login.html

{% extends "base.html" %}

{% block content %}

{% if form.errors %}
<p>Your username and password didn't match. Please try again.</p>
{% endif %}

{% if next %}
    {% if user.is_authenticated %}
    <p>Your account doesn't have access to this page. To proceed,
    please login with an account that has access.</p>
    {% else %}
    <p>Please login to see this page.</p>
    {% endif %}
{% endif %}

<form method="post" action="{% url 'login' %}">
{% csrf_token %}
<table>
<tr>
    <td>{{ form.username.label_tag }}</td>
    <td>{{ form.username }}</td>
</tr>
<tr>
    <td>{{ form.password.label_tag }}</td>
    <td>{{ form.password }}</td>
</tr>
</table>

<input type="submit" value="login">
<input type="hidden" name="next" value="{{ next }}">
</form>


{% endblock %}
<!DOCTYPE html>
{% load static %}

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>AIDEN QUIZ</title>

    <style>

    </style>


</head>

<body>

    <ul>
          <li>
             <a href="{% url 'index' %}">aidenquiz.com</a>
          </li>
            <li>
         <a href="{% url 'logout' %}?next=/">Logout</a>  <!--  ?next=/ -->
          </li>
        </ul>
<span>
<a href="{% url 'quizzes' %}">Quizzes</a>
    <a href="{% url 'leaderboard' %}">Leaderboard</a>
    <a href="https://www.youtube.com">Youtube</a>
    <a href="https://www.instagram.com">Instagram</a>
</span>
{% block content %}

{% endblock %}

  </body>
   <script>
{% block js %}

{% endblock %}

</script>

</html>
views.py(在quizapp中)


停留在登录页面可能与登录后重定向的{{next}}值有关。在your settings.py中,您需要设置一个登录名\u REDIRECT\u URL='/'(对于我来说“/”是我的索引,我不知道它对您来说是什么。我假设您使用的是django内置Author。此外,这个问题写得很糟糕(我甚至不知道问题是什么)并且您没有提供任何代码。您可以指定问题所在并发布url.py、views.py以及您的模板中的一些代码吗?shi@amchugh89:请检查下面的我的代码:url.py:url(r'^login$,auth_views.LoginView.as_view(redirect\u authenticated\u user=True)、namee='login')、url(r'^index\u login',views.index\u login,name='index\u login')、setting.py:login\u redirect\u url='index\u login'login'url='login'我想可能是因为namee='login'应该只有一个e的名字
def logout_view(request):
    logout(request)
    return HttpResponseRedirect(reverse('index'))

@login_required(login_url='/accounts/login/')
def index(request):
    context = {}
    return render(request, 'quizapp/index.html', context)