Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 由于中间件文件,url未显示_Django_Django Views_Django Templates_Django Urls_Django Middleware - Fatal编程技术网

Django 由于中间件文件,url未显示

Django 由于中间件文件,url未显示,django,django-views,django-templates,django-urls,django-middleware,Django,Django Views,Django Templates,Django Urls,Django Middleware,我试图访问我的索引视图,但我被自动重定向到show_login视图,我认为问题来自我的自定义中间件文件 以下是主要观点: def indexmain(request): return render(request, "main_template/index.html") 网址: path('admin/', admin.site.urls), path('accounts/',include('django.contrib.auth.urls'))

我试图访问我的索引视图,但我被自动重定向到show_login视图,我认为问题来自我的自定义中间件文件

以下是主要观点:

def indexmain(request):
    return render(request, "main_template/index.html")
网址:

     path('admin/', admin.site.urls),
    path('accounts/',include('django.contrib.auth.urls')),
    path('', views.ShowLoginPage, name="show_login"),
    path('indexmain', views.indexmain,name="index"),
    path('get_user_details', views.GetUserDetails),
    path('logout_user', views.logout_user,name="logout"),
    path('doLogin',views.doLogin,name="do_login"),
这是我的自定义中间件文件:

    from django.http import HttpResponseRedirect
from django.urls import reverse
from django.utils.deprecation import MiddlewareMixin


class LoginCheckMiddleWare(MiddlewareMixin):

    def process_view(self,request,view_func,view_args,view_kwargs):
        modulename=view_func.__module__
        print(modulename)
        user=request.user
        if user.is_authenticated:
            if user.user_type == "1":
                if modulename == "gestion.HodViews":
                    pass
                elif modulename == "gestion.views" or modulename == "django.views.static":
                    pass
                elif modulename == "django.contrib.auth.views" or modulename =="django.contrib.admin.sites":
                    pass
                else:
                    return HttpResponseRedirect(reverse("admin_home"))
            elif user.user_type == "2":
                if modulename == "gestion.StaffViews" or modulename == "gestion.EditResultVIewClass":
                    pass
                elif modulename == "student_management_app.views" or modulename == "django.views.static":
                    pass
                else:
                    return HttpResponseRedirect(reverse("staff_home"))

            else:
                return HttpResponseRedirect(reverse("show_login"))

        else:
            if request.path == reverse("index") or request.path == reverse("show_login") or request.path == reverse("do_login") or modulename == "django.contrib.auth.views" or modulename =="django.contrib.admin.sites" :
                pass
            else:
                return HttpResponseRedirect(reverse("show_login"))