2013-07-23 36 views
4

我收到一個錯誤,在我的Django模板中創建鏈接。接收錯誤:反向參數'()'和關鍵字參數未找到

我的模板看起來是這樣的:

<a href="{% url 'location_detail' pk=location.id %}">{{ location.name }}</a> 

我的urls.py的樣子:

url(r'^location(?P<pk>\d+)/$', views.location_detail, name="location_detail"), 

我的看法是這樣的:

def location_detail(request, pk=None): 

我得到的錯誤:

Reverse for views.location_detail with arguments '()' and keyword arguments '{u'pk': 1L}' not found. 

我使用Django 1.5和python 2.7.2

謝謝!

+0

刪除pk =在模板調用 – karthikr

回答

10

的問題是,我對主要項目urls.py一個命名空間:

url(r'^com/', include('com.urls', namespace="com")), 

網址更改爲:

{% url 'com:location_detail' pk=location.id %} 

該訣竅

+1

哇,我不知道與反向的命名空間問題,這篇文章絕對做到了。 – user798719

3

你給你的URL模式的名稱,所以你應該在{% url %}調用中使用該名稱:

{% url 'location_detail' pk=location.id %} 
+0

兩種方式它有相同的錯誤。謝謝 – Atma

相關問題