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

上一篇: Django reverse() and CBV

下一篇: Django ModelForm not saving data to database