Django 应用程序 404 错误无法识别新应用程序 url 和视图

问题描述 投票:0回答:1

您好,我正在尝试创建我的第一个 Django 项目,但在让应用程序在我的 Django 项目中运行时遇到问题。我只是想映射 url 代码 8000/home1/hello/ 以显示基本文本“hello world”,但未能这样做。我不断收到此错误代码:

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

管理员/ 当前路径 home1/hello 与其中任何一个都不匹配。”

这是我所做的:

  1. 创建了一个名为 web3 的 django 项目
  2. 创建了一个名为 home1 的应用程序,并向该应用程序添加了 urls.py 文件
  3. 更新了settings.py文件夹INSTALLE_APPS以具有“home1.apps.Home1Config”,
  4. home1 > urls.py 包含以下代码:

from django.urls 导入路径 从 。导入视图

urlpatterns = [
    path('hello/', views.hello_world, name="hello_world"),
]

  1. home1>views.py 包含以下代码:

from django.shortcuts import render
from django.http import HttpResponse

def hello_world(request):
    return HttpResponse("you finally did it justin")

6.web3> urls.py 包含以下代码:

from django.contrib import admin
from django.urls import path, include
from home1.views import hello_world  # Import the hello_world view function


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

  1. 我非常有信心我的文件支出是正确的,因为我使用基本代码来创建文件(django-admin startproject web3)和(python manage.py startapp home1)

我完全迷失了这个......任何帮助将不胜感激!!!

python django web url
1个回答
0
投票

路径

"home1/hello/"
在您的服务器上不存在。仅存在
"hello/"
"admin/"

这是一个常见的误解,如果您将 URLconf 包含到根 URLconf 中,如下所示:

urlpatterns = [
    #•••Rest of code•••
    path('', include('home1.urls')),
]

来自该应用程序的所有路由都将以该应用程序的名称开头,例如以上

"home1"

这不是真的。为了存在基本名称,您必须给出一个基本名称。

urlpatterns = [
    #•••Rest of code•••
    path('home1/', include('home1.urls')),
]

现在该应用程序的所有路线都将以

"home1"
开头。

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