我是使用Django的新手,我遇到了一些问题。当我运行我的服务器' runserver'它显示404页面未找到。我的项目目录名是' mysite'我的应用名称是' webapp'。我认为问题出在' urls'文件。我还将我的应用名称放在设置部分的INSTALLED_APPS中。
这是mysite / urls.py文件中的代码:
"""mysite URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/2.0/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('webapp', include("webapp.urls")),
]
这是webapp / urls.py文件中的代码:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name = "index"),
]
我正在使用最新的Django版本2.0.5,我试图查找此错误,但其中大多数似乎是旧版本的Django。
在这个问题上,我将不胜感激。
答案 0 :(得分:0)
在您的webapp / urls.py中,您必须指定应用名称
app_name = "webapp"
<强> mysite的/网址强>
urlpatterns =
[
path('webapp/'), include() )
]
注意:父网址必须包含尾部斜杠。
答案 1 :(得分:0)
你说那个
当我运行我的服务器&#39; runserver&#39;它显示404页面未找到
这表明,您尝试了root
网址,类似于localhost:8000/
,并且您没有为根网址定义任何内容
要解决此404
错误,您可以定义一个简单的hello world视图,如下所示
的 mysite的/ urls.py 强>
from django.contrib import admin
from django.http import HttpResponse
from django.urls import include, path
def sample_view(request):
return HttpResponse("Hello World")
urlpatterns = [
path('', sample_view),
path('admin/', admin.site.urls),
path('webapp', include("webapp.urls")),
]
答案 2 :(得分:0)
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('webapp/', include('webapp.urls')),
]
您忘记在路径“ webapp /”中的webapp之后添加反斜杠,这将有助于重定向到视图中的其他方法。
答案 3 :(得分:0)
由于没有为您的根URL定义任何内容,因此它为空,并发生404错误。要解决此问题,只需在地址栏中的本地服务器URL之后键入视图的路径。即“ 127.0 .0.1:8000 / webapp“ 或使用” localhost / name_of_url“