rest_framework-权限-总结完结篇

Posted liang-jc

tags:

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

#权限
#创建一个权限类 在view添加列表

class MyPermission(object):
#message 表示权限决绝时返回的数据
message = "必须是SVIP"
def has_permission(self, request, view):
if request.user.user_type != 3:
return False
return True #有权访问

permission_classes = [MyPermission,]
#局部使用
在utils里创建permission.py 文件
from api.utils.permission import Mypermission

#全局使用
REST_FRAMEWORK = {
"DEFAULT_PERMISSION_CLASSES":[‘api.utils.auth.SVIPPermission‘]
}

源码流程
-has_permission(self,request, view)

内置代码
from rest_framework.permissions import BasePermission
#必须继承BasePermission 必须实现 has_permission 方法
返回值:
True 有权访问
False 无权访问
一般不抛出异常 直接通过 message可以实现无权时,页面显示信息

BasePermission(object):
def has_permission(self, request, view):
return True

def has_object_perssion(self, request, view, obj):
return True

class SVIPPermission(BasePermission):
#message 表示权限决绝时返回的数据
message = "必须是SVIP"
def has_permission(self, request, view):
if request.user.user_type != 3:
return False
return True #有权访问













































以上是关于rest_framework-权限-总结完结篇的主要内容,如果未能解决你的问题,请参考以下文章

rest_framework-认证-总结完结篇

rest_framework-版本-总结完结篇

rest_framework-节流-总结完结篇

简单演示django使用之五--(django概用完结总结篇)

python基础篇(二十)——Python中的一些易混淆点总结(完结)

Linux 0.11 - 进入内核前的苦力活完结篇