繁体   English   中英

Django URL反向匹配错误

[英]Django url reverse matching error

这是我的应用程序树:

myapp/
  assets/
  statics/
  settings.py
  urls.py
  \\other stuff
main/
  urls.py
  views.py
  templates/
     base.html
     index.html
  \\other stuff
manage.py

测试我的应用程序时,出现以下错误:

Error during template rendering

In template /app/main/templates/base.html, error at line 32
Reverse for 'index' with arguments '()' and keyword arguments '{}' not found.

这是涉及错误的base.html中的代码:

{% load i18n %}
\\some stuff

 <a class="brand" href="{% url 'index' %}">{{ site.name }}</a> <--- this line is the error

main/urls.py我有:

urlpatterns = patterns('',
  (r'^$', TemplateView.as_view(template_name="index.html")),
)

myapp/urls.py我有:

urlpatterns = patterns('',
                       url(r'', include('main.urls'), name='index'),

)

有人可以告诉我我做错了什么,为什么名称'index'没有反向匹配?

name是针对单个视图的,它不与include语句一起使用。 尝试这种方式:

在main / urls.py中:

urlpatterns = patterns('',
                       url(r'^$', TemplateView.as_view(template_name="index.html"), 
                           name='index'),
)

在myapp / urls.py中:

urlpatterns = patterns('',
                       url(r'', include('main.urls')),
)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM