【问题标题】:Not Found: /hello/未找到:/你好/
【发布时间】:2020-08-08 08:33:14
【问题描述】:
from django.http import HttpResponse
from django.shortcuts import render

# Create your views here.
def index(request):
    return HttpResponse("Hellow, World !")
from django.urls import path
from . import views

urlspattern=[
    path("",views.index,name="index")
]

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

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


INSTALLED_APPS = [
    'hello',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
]

我得到的错误是

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

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

【问题讨论】:

    标签: python django django-models django-views django-urls


    【解决方案1】:

    你的 urlpattern 有错字

    urlspattern=[
        path("",views.index,name="index")
    ]
    

    你必须把它改成

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

    【讨论】:

    • 所以,我们必须为该变量使用相同的名称。你能解释一下为什么吗?
    • urlpatterns 就像 Django 的关键字。你不能有任何其他的名字,否则 Django 将无法找到你的 URL 模式
    • 每当您将任何文件名放入 include() 或 root_url 时,django 都会尝试在该文件上查找列表名称 urlpatterns 以进行 url 路由,这就是您无法更改的原因
    【解决方案2】:

    在此行中将urlpattern 更改为urlpatterns

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-11
      • 2014-06-10
      • 2020-07-04
      • 2011-02-06
      • 1970-01-01
      • 1970-01-01
      • 2020-06-20
      相关资源
      最近更新 更多