2016-10-04 86 views
0

當我改變行Django的:NoReverseMatch更改爲相對URL

<a href="/rango/category/{{category.slug}}">

<a href="{% url 'show_category' category.slug %}">

我得到NoReverseMatch。出了什麼問題?

網址:

app_name="rango" 
urlpatterns = [ 
    url(r'^$', views.index, name='index'), 
    url(r'^about/', views.about, name='about'), 
    url(r'^category/(?P<category_name_slug>[\w\-]+)/', 
     views.show_category, name='show_category'), 
    url(r'^add_category/$', views.add_category, name='add_category'), 
    url(r'^category/(?P<category_name_slug>[\w\-]+)/add_page/$', views.add_page, name='add_page'), 
] 

enter image description here

+1

你的一些模式在結尾處缺少一個'$'來匹配url路徑的末尾。結果,沒有網址會例如曾經到達'add_page'視圖,因爲它已經被'show_category'視圖所匹配。 – knbk

回答

0

您已經定義了應用程序的名稱爲rango。你需要在反轉url時使用這個:

<a href="{% url 'rango:show_category' category.slug %}"> 
+0

完美。我會盡可能接受 –