NoReverseMatch at /answer/ Reverse for 'detail' 找不到关键字参数 '{'pk': 1}'。尝试了 1 种模式:['答案/$(?P\&



由于某种原因,我似乎无法解决此错误。,任何帮助将不胜感激

这是 Models.py

def get_absolute_url(self):
    # return f"/question/{self.slug}"
    return reverse('qna:detail', kwargs={'pk': self.pk})

QNA/urls.py

url(r'^$', AnsListView.as_view(),name='list'),
url(r'^create$', AnsCreateView.as_view(),name='create'),
url(r'^(?P<pk>d+)/$', AnsDetailView.as_view(),name='detail'),

main/url.py

url(r'^answer/$',include('qna.urls', namespace='qna')),

错误尝试加载http://127.0.0.1:8000/answer/

NoReverseMatch at /answer/
Reverse for 'detail' with keyword arguments '{'pk': 1}' not found. 1 pattern(s) tried: ['answer/$(?P<pk>\d+)/$']
Request Method: GET
Request URL:    http://127.0.0.1:8000/answer/
Django Version: 1.11.2
Exception Type: NoReverseMatch
Exception Value:    
Reverse for 'detail' with keyword arguments '{'pk': 1}' not found. 1 pattern(s) tried: ['answer/$(?P<pk>\d+)/$']
Exception Location: C:UsersprashDesktopprashantkspksprojectlibsite-packagesdjangourlsresolvers.py in _reverse_with_prefix, line 497

由于您包括答案中的URL,因此您需要删除$符号,这表示正则终止。

url(r'^answer/$',include('qna.urls', namespace='qna')),
             /

应该是

url(r'^answer/',include('qna.urls', namespace='qna')),

最新更新