码迷,mamicode.com
首页 > 其他好文 > 详细

rest-framework之权限组件

时间:2019-07-04 00:45:05      阅读:133      评论:0      收藏:0      [点我收藏+]

标签:图书   http   books   request   efault   alt   中文   ==   sage   

权限介绍

只用超级用户才能访问指定的数据,普通用户不能访问,所以就要有权限组件对其限制

源码部分

技术图片

 

 技术图片

权限类:

class MyPermission():
    def has_permission(self,request,view):
        if  request.user.user_type == 1:
            return True
        else:
            return False

视图类:

class Books(APIView):
    # authentication_classes = [类名,类名]
    #只有超级用户才能访问此接口
    permission_classes = [MyPermission,]
    def get(self,request):
        print(request.user.name)
        return Response(返回所有图书)

如果是普通用户登录返回的是个英文错误信息,要把他转换成中文

技术图片

只要在了方法上面价格message

技术图片

 

技术图片

需要继承

from rest_framework.permissions import BasePermission

 局部使用

permission_classes = [MyPermission,]

全局使用

因为是个列表,直接后面加上

REST_FRAMEWORK={
    "DEFAULT_AUTHENTICATION_CLASSES":["app01.MyAuths.MyAuth",],
    "DEFAULT_PERMISSION_CLASSES":["app01.MyAuths.MyPermision",]
}

局部禁用

permission_classes = []

 

rest-framework之权限组件

标签:图书   http   books   request   efault   alt   中文   ==   sage   

原文地址:https://www.cnblogs.com/zhengyuli/p/11129721.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!