欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Django页面访问权限控制

程序员文章站 2024-03-19 13:48:40
...

第一种  添加@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'
]