簡體   English   中英

如何獲取django restframework權限中的param PK?

[英]How to get the param PK in django restframework permission?

我在 Django 中擁有此權限,如下所示:

class PermissionName(BasePermission):
    

    def has_object_permission(self, request, view, obj):

        if request.method in SAFE_METHODS:
            return True
        #I want to extract the pk or id params in here.

        return False

誰能幫我獲取我嘗試使用self.kwargs["pk"]request.POST['pk']的請求參數,但他們都返回說 object 沒有屬性。

如果pk是 POST 請求的參數,您可以使用request.POST.get('pk')訪問它。 在您的帖子中,您沒有使用get() ,因此這可能是問題所在。

如果對象作為函數的參數提供,我假設您想要它的 ID。 這也可以通過obj.id實現。

假設您的路徑是:

path('listings/get/category/<str:pk>/', endpoints.HousesWithSameCategory.as_view()),

您的請求: api/listings/get/category/1/

在您的 class 方法視圖中使用:

def get_queryset(self):
    print(self.kwargs)

這將返回{'pk': '1'}

self.kwargs將返回你所有的動態參數

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM