Django捕获NoReverseMatch - TemplateSyntaxError

时间:2010-11-09 17:27:27

标签: django django-templates

我收到了这个错误,但似乎无法弄明白。我直接从之前的Django项目中复制了它,因此造成了一些混乱。

  

在渲染时捕获NoReverseMatch时的TemplateSyntaxError:使用参数'()'和未找到关键字参数'{}来反转'about'。

在我的index.html中,我有{% url about %}的链接没有链接到about.html模板

Urls.py有这个:

urlpatterns = patterns('django.views.generic.simple',
    url(r'^about/$', 'direct_to_template', {"template":"about.html"}, name="about"),
)

3 个答案:

答案 0 :(得分:4)

问题是我的第二个urlpattern覆盖了第一个模式。

而不是:

urlpatterns = patterns('',

需要:

urlpatterns += patterns('',

答案 1 :(得分:0)

url正则表达式期待结束斜杠。违规网址是否以斜线结尾?

如果您的PREPEND_SLASHES设置与上一个项目不同,那么可能会解释您所看到的错误!

答案 2 :(得分:0)

你的网址没问题。你需要检查两件事:

  1. urls.py是否包含在主urls.py?
  2. 应用程序是否已添加到settings.py中的INSTALLED_APPLICATIONS