使用 NEXT 参数时在 Python Django 中重定向错误

问题描述

用于重定向的网站

www.example.com/login/?next=/

但现在它重定向

www.example.com/login/?next=/login/

没有对代码进行任何更改,但现在问题已被创建为抛出 ERR_TOO_MANY_REDIRECTS重定向次数过多。 主要

urls.py

path('admin/',admin.site.urls),path('login/',include(('login.urls','login'),namespace='login')),path('',include('home.urls')),

home.urls

url(r'^$',views.home,name='home'),url('profile',views.profile,name="profile"),

登录.urls

path("",views.do_login),path("logout/",logoutView.as_view(),name="logout"),path("password_reset/",views.CustomPasswordResetView.as_view(),name="password_reset"),

当我使用 NEXT 参数时, 在主页视图中,我尝试更改为 **@login_required(/login) to @login_required** , 在

登录views.py

def do_login(request):
    if request.method == 'GET':
        return render(request,'login/login.html')
    else:
        username = request.POST['email']
        password = request.POST['password']
        selector = request.POST['radiogroup1']
        username_exist = User.objects.filter(email=username)

主页视图.py

@login_required(login_url='/login') 定义主页(请求): User_Info=User_Basic_Info(请求) user_logged_in = request.user 用户表单 = 用户帖子表单() qs = request.user.notifications.unread() 打印(qs) qs.mark_all_as_read()

但是变化没有反映,不明白为什么,它抛出

"GET /login/?next=/login/ HTTP/1.1" 302 0

使用过django.contrib.auth

希望有人能帮忙, 提前致谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...