如何修复找不到页面(404)&Quot;错误(&Quot;Django尝试了这些URL模式.空路径与这些路径中的任何一个都不匹配。(&Q;)

问题描述

作为Django的新手,我遇到了与之前许多人相同的问题。如果您没有立即将我的问题标记为双重问题,我将不胜感激,因为我检查了那些旧帖子建议的修复,但都无济于事。

我正在学习this教程,并且已经完成了标题为"项目应用程序:模板"的所有内容。现在,当我启动服务器时,在http://localhost:8000/收到:

找不到页面(404) 请求方法:GET 请求URL:http://localhost:8000/

使用Personal_Portfolio.urls中定义的URLconf,Django按以下顺序尝试了这些URL模式:

admin/
projects/

空路径与这些路径中的任何一个都不匹配。

您之所以看到这个错误,是因为您的Django设置文件中有debug=True。将其更改为false,Django将显示标准的404页面。

这是我运行服务器时的控制台输出:

系统检查未发现任何问题(0已静默)。

2019年04月05日-15:31:54

Django版本2.2,使用设置‘Personal_Portfolio.settings’

在http://127.0.0.1:8000/启动开发服务器

按Ctrl-Break退出服务器。

未找到:/

[05/Apr/2019 15:32:01]"GET/HTTP/1.1"404 2042

未找到:/folicon.ico

[05/Apr/2019 15:32:01]"GET/folicon.ico HTTP/1.1"404 2093

我尝试的内容,但无济于事:

  1. 重新启动服务器,
  2. 对照教程的source code,
  3. 检查文件中的代码
  4. 已确保'projects'位于settings.py中的INSTALLED_APPS列表中。

这里是urls.py,它在RP-PortfoliOpersonal_Portfolio中:

from django.contrib import admin
from django.urls import path, include

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

这里是urls.py,即在RP-PortfolioProjects中:

from django.urls import path
from . import views

urlpatterns = [
    path("", views.project_index, name="project_index"),
    path("<int:pk>/", views.project_detail, name="project_detail"),
]

解决方案

urls.py

from django.urls import path
from django.views.generic import RedirectView

urlpatterns = [
    path('admin/', admin.site.urls),
    path('projects/', include('projects.urls')),
    path('', RedirectView.as_view(url='/projects/')),
]

相关文章