Django'/'只有主页网址错误

问题描述 投票:3回答:2

我正在使用Django 2.0,现在我不知道如何为主页制作一个'空'网址。意思是,我希望它为web.com/web.com路线。我试过这段代码,但它不起作用:

urlpatterns = [
    path('admin/', admin.site.urls),
    path('/', include('post.urls'))
]

......和post.urls

urlpatterns = [
    path('', views.index, name='index')
]

当我向localhost:8000提出请求时我得到的错误:

请求URL:http://localhost:8000/使用myblog.urls中定义的URLconf,Django按以下顺序尝试了这些URL模式:

  1. 管理员/
  2. /

空路径与其中任何一个都不匹配。

通过将path设置为两个空字符串'',我确实找到了一种解决方法但是我不确定它是否被推荐或者它可能导致什么错误。非常感谢帮助。谢谢 :-)。

python django routing
2个回答
8
投票

您不需要“/”作为主页,只需将路径留下“”。然而,主页127.0.0.1:8000/与127.0.0.1:8000相同。此URL模式适用于主页。

URLs.朋友

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('post.urls'))
]

posts.urls

urlpatterns = [
    path('', views.index, name='index')
]

0
投票

Django 2.0文档中有大量空白URL模式的引用。

Django 2.0 Docs URLs section

此外,不需要在浏览器中查看时在“admin /”上添加的斜杠。 url调度程序将删除URL confs上的尾部斜杠,但不会在Web请求中删除它。这意味着它不会在您的情况下找到匹配项,请尝试localhost:8000 / admin

© www.soinside.com 2019 - 2024. All rights reserved.