在我的 django 项目中,当我访问 localhost:8000 时,它说:
Page not found (404)
Request Method: GET
Request URL: http://localhost:8000/
urls.py 是:
from django.conf.urls import include, url
from django.contrib import admin
from polls import views
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^polls/', include('polls.urls', namespace="polls")),
]
投票 urls.py 是:
from django.conf.urls import url, include
from django.contrib import admin
from polls import views
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^(?P<question_id>\d+)/$', views.detail, name='detail'),
url(r'^(?P<question_id>\d+)/vote/$', views.vote, name='vote'),
url(r'^(?P<question_id>\d+)/results/$', views.results, name='results'),
url(r'^admin/', admin.site.urls),
]
Django 版本为 1.10。谁能帮我找出问题所在?提前致谢。
请您参考如下方法:
你似乎没有 / 的路线,所以 http://localhost:8000/ 不会让你到任何地方。
你在 urls.py 中写了 url(r'^polls/', include('polls.urls', namespace="polls")), 所以所有polls.urls 中定义的路由将以 polls/ 为前缀。
你可能真的想去http://localhost:8000/polls/(注意polls/,因为你定义为索引的路由列在投票应用程序。
如果您想将投票索引路由到您的 url 根目录,您应该将 urls.py 更改为类似
urlpatterns = [
url(r'^', include('polls.urls', namespace="polls")),
url(r'^admin/', admin.site.urls),
]
忘记 url 中的 polls/ 部分。
