【问题标题】:How can I get an access to url paramaters in django rest framework permission class?如何访问 django rest 框架权限类中的 url 参数?
【发布时间】:2018-05-03 23:39:15
【问题描述】:

我有一个看法:

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。我该如何通过它?

【问题讨论】:

  • @ABDULNIYASPM 它不是获取参数。网址看起来像 /users//deals/ .

标签: python django permissions django-rest-framework url-parameters


【解决方案1】:

试试这个:

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

【讨论】:

    猜你喜欢
    • 2016-11-20
    • 1970-01-01
    • 1970-01-01
    • 2017-04-13
    • 1970-01-01
    • 2014-08-25
    • 2016-01-25
    • 1970-01-01
    • 2019-07-13
    相关资源
    最近更新 更多