Django Rest Framework 权限组件

from rest_framework.viewsets import ModelViewSet
from .authentication_classes import UserAuth
from .permission_classes import UserPerm
class BookView(ModelViewSet):
    # 在需要认证的数据接口里面指定认证类
    authentication_classes = [UserAuth]
    # 在需要认证的数据接口里面指定权限类
    permission_classes = [UserPerm]
    queryset = models.Book.objects.all()
    serializer_class = BookSerizlizer
views.py

在项目应用目录下新建一个permission_classes.py文件

 

class UserPerm():
    message = '你不具有权限!'
    def has_permission(self, request, view):
#在models表里面指定了用户的usertype_id ,如果目前登录的用户usertype_id是3 就是超级VIP。返回True。具备权限.
        if request.user.usertype_id == 3:
            return True
        return None
permission_classes.py

 

posted @ 2020-02-21 21:01  y0um  阅读(134)  评论(0编辑  收藏  举报

新人优惠服务器