[英]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.