【问题标题】:Django Caught NoReverseMatch - TemplateSyntaxErrorDjango 捕获 NoReverseMatch - TemplateSyntaxError
【发布时间】:2011-05-07 09:37:02
【问题描述】:

我收到此错误,但似乎无法弄清楚。我直接从以前的 Django 项目中复制了它,因此造成了部分混乱。

渲染时 Caught 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"),
)

【问题讨论】:

    标签: django django-templates


    【解决方案1】:

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

    代替:

    urlpatterns = patterns('',
    

    必须是:

    urlpatterns += patterns('',
    

    【讨论】:

      【解决方案2】:

      url 正则表达式需要一个斜线结尾。违规网址是否以斜杠结尾?

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

      【讨论】:

        【解决方案3】:

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

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

        【讨论】:

          猜你喜欢
          • 2011-03-26
          • 1970-01-01
          • 2012-10-14
          • 2014-10-14
          • 1970-01-01
          • 2012-05-26
          • 2014-01-17
          • 2020-06-16
          • 2011-04-23
          相关资源
          最近更新 更多