Django页面访问权限控制

第一种  添加@login_required标签

 第一步:验证登录访问权限

# 在相应的view方法的前面添加@login_required标签
@login_required
def index(request):
    return render(request,"index.html")

  第二步:在settings.py中配置LGOIN_URL参数(即登陆url)

LOGIN_URL="/login/"

第二种  使用中间件

第一步:创建一个自定义中间件

from django.utils.deprecation import MiddlewareMixin
from django.shortcuts import redirect

class LoginMiddleWare(MiddlewareMixin):
    def process_request(self,request):
        # 白名单
        if request.path in ["/login/","/reg/"]:
            return None
        # 没有登录,则重定向至登录页面
        if not request.user.id:
            return redirect("/login/")

 第二步:在settings文件中加入自己的中间件

MIDDLEWARE = [
     ......(此处省略内置中间件)
    'app01.utils.middlewares.LoginMiddleWare'
]
发布了39 篇原创文章 · 获赞 6 · 访问量 2011

猜你喜欢

转载自blog.csdn.net/weixin_45493345/article/details/102765872