Django reverse()和CBV
我知道我在这里做了一些愚蠢的事,但我似乎无法找到它(一定是愚蠢的)。
在urls.py中我有:
urlpatterns=patterns(...
...
url(r'(?P<cat>[-w]*)/(?P<slug>[-w]+)/$', PlantDetailView.as_view(), name='detail-view'),
....
)
在模板中我有:
{% url 'detail-view' cat=category_slug slug=plant.slug %}
但是我收到以下NoReverseMatch错误:
Reverse for 'detail-view' with arguments '()' and keyword arguments '{u'slug': u'foo', u'cat': u'bar'}' not found.
我尝试过使用*args
和**kwargs
,但没有运气。
感谢您的帮助!
对不起,这是一个命名空间问题。
由于“植物”网址包含在主要的urls.py中,因此解决方案是:
{% url 'plants:detail_view' cat=category_slug slug=plant.slug %}
如果我说url文件是plants/urls.py
,我肯定Samuele Mattiuzzo会抓住它,但我忽略了那个重要的细节。
还是要谢谢你的帮助。
链接地址: http://www.djcxy.com/p/77265.html