我在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 :(得分:10)
问题是我在主项目urls.py上有一个名称空间:
url(r'^com/', include('com.urls', namespace="com")),
将网址更改为:
{% url 'com:location_detail' pk=location.id %}
这就是诀窍
答案 1 :(得分:3)
您已为您的网址格式指定了名称,因此您应在{% url %}
电话中使用该名称:
{% url 'location_detail' pk=location.id %}