我的应用程序名是“canyonero”。我正在pypy5.6.0上使用django1.11
应用程序已在settings.py中启用:
INSTALLED_APPS = [
...
'canyonero.apps.CanyoneroConfig',
...
]
在my project level url.py中有一个到应用程序的路由:
urlpatterns = [
...
url(r'^product/canyonero/', include('canyonero.urls', namespace='canyonero')),
...
]
在my app level URL.py中有一个要解析的命名空间URL:
app_name = 'canyonero'
urlpatterns = [
...
url(r'^events/(?P<pk>\d)/$', EventDetail.as_view(), name='event'),
...
]
然后这个模板标签给了我无尽的悲伤:
{% extends 'common/content.html' %}
{% load static %}
<a href="{% url 'canyonero:event' pk=obj.event_id %}"></a>
我得到的错误是:
NoReverseMatch: Reverse for 'event' with keyword arguments '{u'pk': 532742}' not found. 1 pattern(s) tried: [u'product/canyonero/events/(?P<pk>\\d)/$']
532742是有效记录的有效主键(在shell中用Event.objects.get()
确认),所以不是这样
有什么明显的地方我忽略了吗
\d
匹配单个数字。您需要匹配多个数字,因此需要\d+
:相关问题 更多 >
编程相关推荐