Rest Framework 之权限组件

Posted majingjie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rest Framework 之权限组件相关的知识,希望对你有一定的参考价值。

restful权限控制

# 写一个权限类,继承BasePermission
class MyPremission(BasePermission):
    # 重写has_premission方法
    message = "中文错误信息" # 读源码可以知道 返回值显示中文,写message ="中文"
    def has_premission(self,request,view):
        # 下面写权限控制相关逻辑
        # 因为权限校验在认证之后,所以能取到request.user
        if request.user。user_type == 1:
            return True # 查看源码发现 返回值是bool值
        else:
            return False

权限组件的使用

  1. 在局部视图中使用

    在视图类中写

    permission_classes=[MyPermision,]
  2. 全局使用

    需要在setting.py中配置

    REST_FRAMEWORK=
         "DEFAULT_PERMISSION_CLASSES":["app01.MyAuths.MyPermision",]
             
  3. 全局设置后,在局部禁用

    # 在视图类中写
    permission_classes = []

以上是关于Rest Framework 之权限组件的主要内容,如果未能解决你的问题,请参考以下文章

rest-framework之权限组件

drf之组件(认证权限排序过滤分页等)和xadmincoreapi

python Django Rest_Framework框架 认证权限限流功能组件详解(图文并茂版)

python Django Rest_Framework框架 认证权限限流功能组件详解(图文并茂版)

python Django Rest_Framework框架 认证权限限流功能组件详解(图文并茂版)

基于Django的Rest Framework框架的序列化组件