为什么 Django 找不到给定 slug 的对象?



django告诉找不到带有slug的对象(即404代码(。虽然QuerySet返回不是空的

class PollDetailView(RetrieveAPIView):
    serializer_class = PollSerializer
    def get_queryset(self):
        slug = self.kwargs['pk']
        print(Poll.objects.filter(slug=slug)) # Prints '<QuerySet [<Poll: ddd>]>' reaching '/api/poll/ddd/' url
        return Poll.objects.filter(slug=slug) # 404 Not Found

在您的 PollDetailView

中添加look_up字段
look_up = 'slug'

和您的urls.py

PollDetailView URL更改为

url(r'^api/polls/(?P<slug>[w-]+)/$', views.PollDetail.as_view(),name='poll-detail'),

相关内容

最新更新