如何在 django rest framework 权限 class 中访问 url 参数?

How can I get an access to url paramaters in django rest framework permission class?

我有一个看法:

class DealsView(APIView):
    permission_classes = (IsAuthenticated, IsOwnerOrCuratorOrDirectorOrNotAllowed, )

    def get(self, request, user_pk):
        ...

但为了正确检查权限,我需要将 user_pk url 参数传递给权限:

class IsOwnerOrCuratorOrDirectorOrNotAllowed(permissions.BasePermission):
    def has_permission(self, request, view):
        ...

默认情况下,它除了 self、request 和 view 之外没有任何参数。我该如何通过它?

试试这个:

class IsOwnerOrCuratorOrDirectorOrNotAllowed(permissions.BasePermission):
    def has_permission(self, request, view):
        user_pk = view.kwargs.get('user_pk', None)
        ...