我的urlpatterns
如下:
urlpatterns = [
...
path('article/<int:pk>/', views.ArticleDetailView.as_view(), name='article_detail'),
...
]
我想在视图类中获得此pk
:
class ArticleDetailView(generic.DetailView):
model = Article
def get_context_data(self, **kwargs):
pk = kwargs['pk']
但是,这会引发KeyError:
KeyError at /article/2/
'pk'
答案 0 :(得分:1)
您可以从pk
的{{1}}中获得DetailView
。所以应该是
self.kwargs
答案 1 :(得分:0)
由于在get_context_data
方法中的kwargs参数中搜索值,因此出现此错误。您应该在ArticleDetailView
这样的self.kwargs['pk']
kwargs中进行搜索