有没有办法在不渲染403.html的情况下提高权限被拒绝?

时间:2017-11-09 00:58:22

标签: django django-rest-framework

我试图提出错误的状态。 PermissionDenied会自动为我呈现403.html。有没有办法在没有这个的情况下提升地位?

class IsMemorandumAdmin(UserPassesTestMixin):
    def test_func(self,user):
        permission = Permission.objects.get(
            name="Can CRUD Memorandums")
        return permission in user.user_permissions.all()

    def handle_no_permission(self,request):
        raise PermissionDenied

mixin API要求我抛出BasePermission类型的异常。如果可能的话,HttpResponse(status = 401)会很好

1 个答案:

答案 0 :(得分:0)

@permission_classes((IsAuthenticated )) 尝试将该陈述放在你的功能上

@permission_classes((IsAuthenticated,))
def my_function(request):
    pass