在URL中的href名称时为NoReverseMatch

时间:2017-06-07 17:58:20

标签: django python-3.x django-templates

使用

时我得到NoReverseMatch
{% url 'detail' a.id %}

在我的模板中。

我没有在我的网址中加入$。在谷歌搜索中找到了。

这是我的主要网址

urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^item/', include('item.urls')),
    url(r'^status/', include('status.urls')),
]

和我的status.urls

urlpatterns = [
    # /status/
    url(r'^$', views.index, name='index'),
    # /status/<status_id>/
    url(r'^(?P<status_id>[0-9]+)/$', views.detail, name='detail'),
]

如果我删除{% url 'detail' a.id %}并硬编码status/{{ a.id }}

,则会有效

我不明白我哪里出错了。

1 个答案:

答案 0 :(得分:1)

您需要一个关键字参数。试试这个:

{% url 'detail' status_id=a.id %}

原因是您的detail视图会根据您的urls.py收到关键字参数:(?P<status_id>[0-9]+)