如何使用TemplateView.as_view反转/命名网址?

时间:2013-07-19 00:58:07

标签: django

我正在TemplateView.as_view()中使用urls.py,然后使用你的模板标签url命名。这有用吗?或者我只是做错了..?或者它是我的应用程序干扰的一些遗留垃圾?我有......

<li><a href="{% url "legal" %}">Terms and Conditions</a></li>

url(r'^legal/$', TemplateView.as_view(template_name="legal.html"), name="legal"),

哪个收益

NoReverseMatch at /how-it-works/
Reverse for '"legal"' with arguments '()' and keyword arguments '{}' not found.

对我来说,这不会以这种方式运作。

我们如何使用TemplateView转换网址?

1 个答案:

答案 0 :(得分:3)

您发布的代码在语法上是正确的,但还有其他一些干扰。

  • 该url标记是Django 1.5+语法(请注意文档here中的警告),您能否确认这是您正在使用的安装?我怀疑这是问题所在,异常消息中legal的双引号非常可疑。对于调度程序找不到的URL,Django 1.5+异常消息将包含'legal',而不包含'"legal"'
  • 网址调度程序是否注册了网址?您可以通过点击错误的URL(即404)来调试模式,输出将列出URLConf中所有有效的URL路径。

如果您继续遇到问题,请添加更多信息,以便我们进一步隔离。

祝你好运!