3
我已經看到了一些關於這個問題的其他問題,但他們並沒有解決我的問題。我正在運行Django 1.8.5,Python 2.7.6。NoReverseMatch在/民意調查/(Django教程)
我更新了根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)),
]
和民意測驗/模板/調查/ 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.
我有嘗試重新啓動開發服務器,因爲我建議的其他答案,以及包括{%未來%負載URL}中模板代碼;沒有工作。不知道我缺少什麼,我的代碼與教程中的文件相匹配。
編輯: 輪詢/ urls.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'),]
顯示polls.urls代碼 –
根urls.py的位置是什麼(偶爾會有新用戶在錯誤的地方創建第二個urls.py)。 – Alasdair
root urls.py位於mysite/urls.py中,其中mysite是根目錄的名稱(不是嵌套的mysite目錄)。因此,如果我在另一個回購站的「開發」目錄中找到它,它位於Development/mysite/urls.py中 – Andrew