首页 > 其他 > 详细

rest_framework-权限-总结完结篇

时间:2018-07-29 12:39:07      阅读:146      评论:0      收藏:0      [点我收藏+]
#权限
#创建一个权限类 在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-权限-总结完结篇

原文:https://www.cnblogs.com/Liang-jc/p/9384701.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!