Python Django-NoReverseMatch
因此,我试图通过遵循基础教程进入Django,但将其更改为我实际使用的内容 我有以下URL.py:Python Django-NoReverseMatch,python,django,Python,Django,因此,我试图通过遵循基础教程进入Django,但将其更改为我实际使用的内容 我有以下URL.py: from django.conf.urls import patterns, url from budget import views urlpatterns = patterns('', url(r'^$', views.index, name='index'), url(r'^category/$', views.category, name='category'),
from django.conf.urls import patterns, url
from budget import views
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^category/$', views.category, name='category'),
url(r'^category/(?P<category_id>\d+)/$', views.category_detail, name='category_details')
)
然后我有以下模板:
{% if all_categories_list %}
<ul>
{% for category in all_categories_list %}
<li><a href="/budget/category/{{category.id}}/">{{ category.category_text }}</a></li>
{% endfor %}
</ul>
现在我想做的是从模板中删除硬编码的/budget/category/,并用url关键字替换它,使其更灵活
因此,将模板中的行更改为
<li><a href="{% url 'category' category.id %}">{{ category.category_text }}</a></li>
现在我知道这与名称空间或正则表达式有关(至少我认为是这样),但我似乎还没有足够的洞察力来理解这个问题。因为localhost/budget/category/1/链接的工作方式是正确的。那么,为什么它不能正确地构建链接呢?您的url的名称是
类别\u详细信息
,而不是类别
。因此,将{%url%}
标记更改为:
{% url 'category_details' category.id %}
您的url名称是
类别\u详细信息
,而不是类别
。因此,将{%url%}
标记更改为:
{% url 'category_details' category.id %}
您的url名称是
类别\u详细信息
,而不是类别
。因此,将{%url%}
标记更改为:
{% url 'category_details' category.id %}
您的url名称是
类别\u详细信息
,而不是类别
。因此,将{%url%}
标记更改为:
{% url 'category_details' category.id %}
呃,我是个白痴。我已经试过了,但是编辑器窗口在半个屏幕上,并将其视为category_detail而不是category_details。我在这里复制的时候又错过了。嗯,我想这会教你在学习中休息3天。这解决了问题:)非常感谢!呃,我是个白痴。我已经试过了,但是编辑器窗口在半个屏幕上,并将其视为category_detail而不是category_details。我在这里复制的时候又错过了。嗯,我想这会教你在学习中休息3天。这解决了问题:)非常感谢!呃,我是个白痴。我已经试过了,但是编辑器窗口在半个屏幕上,并将其视为category_detail而不是category_details。我在这里复制的时候又错过了。嗯,我想这会教你在学习中休息3天。这解决了问题:)非常感谢!呃,我是个白痴。我已经试过了,但是编辑器窗口在半个屏幕上,并将其视为category_detail而不是category_details。我在这里复制的时候又错过了。嗯,我想这会教你在学习中休息3天。这解决了问题:)非常感谢!