[英]Django kwarg always 'pk'?
我正在使用django rest框架開發django應用程序。 我正在嘗試使用如下網址過濾返回的數據:
router.register(r'^api/rates/(?P<name>\w+)', views.RateViewSet)
這是觀點:
def get_queryset(self):
if 'name' in self.kwargs:
n = self.kwargs['name']
return Rates.objects.filter(name=n)
但是由於某種原因,無論我做什么,第一個kwarg始終被命名為“ pk”。 即使我將其設置為正則表達式url中的名稱。 但是,當我添加帶有api / rates / one / two之類的第二個kwarg時,整個內容(一個/兩個)將附加到名稱鍵上。 難道我做錯了什么? 我怎樣才能解決這個問題?
您需要設置lookup_field屬性。 默認為'pk'
lookup_field='name'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.