我在 SO 上看到了其他一些关于此的问题,但它们没有解决我的问题。我正在运行 Django 1.8.5,Python 2.7.6。
我将根 urls.py 更新为
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^polls/', include('polls.urls', namespace="polls")),
url(r'^admin/', include(admin.site.urls)),
]
和 polls/templates/polls/index.html 到
{% if latest_question_list%}
<ul>
{% for question in latest_question_list %}
<li><a href="{% url 'polls:detail' question.id %}">{{ question.question_text }}</a></li>
{% endfor %}
</ul>
{% else %}
<p>No polls are available.</p>
{% endif %}
我收到错误
NoReverseMatch at /polls/
u'polls' is not a registered namespace.
我已尝试按照我建议的其他答案重新启动开发服务器,并在模板代码中包含 {% load url from future %};两者都没有奏效。不确定我缺少什么,我的代码与教程中的文件匹配。
编辑:
民意调查/网址.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<question_id>[0-9]+)/$', views.detail, name='detail'),
url(r'^(?P<question_id>[0-9]+)/results/$', views.results, name='results'),
url(r'^(?P<question_id>[0-9]+)/vote/$', views.vote, name='vote'),]
最佳答案
如果 ROOT_URLCONF
设置为 mysite.urls
,则 urls.py 应位于嵌套的 mysite
目录中,即 mysite/mysite/urls.py
。
关于python - NoReverseMatch at/polls/(django 教程),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33151816/