"NoReverseMatch at /" 尝试在模板中创建 link 时
"NoReverseMatch at /" when trying to create a link in template
我正在学习 Django 教程,在 third part 中,他们在模板中创建了一个 link。现在,我跟着写了一个这样的模板:
<ul>
{% for blog in blogs %}
<li>
<a href="{% url 'detail' blog.id %}">
<h1>{{ blog.name }}</h1>
</a>
<p>{{ blog.description }}</p>
</li>
{% endfor %}
</ul>
我已经这样设置 urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<blog_id>[0-9]+)/$', views.detail, name='detail'),
]
但是,当我将浏览器指向索引时,出现以下错误:
NoReverseMatch at /
Reverse for 'detail' with arguments '(1,)' and keyword arguments '{}' not found.
1 pattern(s) tried: ['$(?P<blog_id>[0-9]+)/$']
错误详细信息突出显示了模板的这一部分:
<a href="{% url "detail" blog.id %}">
这里发生了什么?我该如何解决?我正在使用 Django 1.8.4.
您的主 urls.py
拼写错误,例如。
url(r'^polls/$', include('polls.urls')),
你要这样写
r'^polls/'. # Note please remove `$` in end
我正在学习 Django 教程,在 third part 中,他们在模板中创建了一个 link。现在,我跟着写了一个这样的模板:
<ul>
{% for blog in blogs %}
<li>
<a href="{% url 'detail' blog.id %}">
<h1>{{ blog.name }}</h1>
</a>
<p>{{ blog.description }}</p>
</li>
{% endfor %}
</ul>
我已经这样设置 urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<blog_id>[0-9]+)/$', views.detail, name='detail'),
]
但是,当我将浏览器指向索引时,出现以下错误:
NoReverseMatch at /
Reverse for 'detail' with arguments '(1,)' and keyword arguments '{}' not found.
1 pattern(s) tried: ['$(?P<blog_id>[0-9]+)/$']
错误详细信息突出显示了模板的这一部分:
<a href="{% url "detail" blog.id %}">
这里发生了什么?我该如何解决?我正在使用 Django 1.8.4.
您的主 urls.py
拼写错误,例如。
url(r'^polls/$', include('polls.urls')),
你要这样写
r'^polls/'. # Note please remove `$` in end