Django反向url与参数到基于类的视图

时间:2011-12-21 10:41:15

标签: python django hyperlink django-class-based-views

我刚开始学习python和django,我有一个问题。 我得到了将函数视图转换为基于类的视图的赋值。但我的链接现在不起作用。

这些来自urls.py:

url(r'^$', ContactIndex.as_view()),
url(r'^add$', ContactAdd.as_view()),
url(r'^([0-9]+)/update$', ContactUpdate.as_view()),
url(r'^([0-9]+)/view$', ContactView.as_view()),

这是我的链接:

{% url rtr_contact.views.ContactView contact.id %}

但这不起作用,它说:

Caught NoReverseMatch while rendering: Reverse for 'rtr_contact.views.ContactView' with arguments '(20L,)' and keyword arguments '{}' not found.

1 个答案:

答案 0 :(得分:17)

为了简化网址翻转,我建议您始终name your url patterns

url(r'^$', ContactIndex.as_view(), name="contact_index"),
url(r'^add$', ContactAdd.as_view(), name="contact_add"),
url(r'^([0-9]+)/update$', ContactUpdate.as_view(), name="contact_update"),
url(r'^([0-9]+)/view$', ContactView.as_view(), name="contact_view"),

然后在模板中:

{% url contact_view contact.id %}