PyCharm环境下Django2.0.4空路径匹配失败问题咨询
解决Django空路径未匹配URL模式的问题
嘿,刚上手Django就遇到路由问题太正常啦,我来帮你搞定这个“空路径未匹配”的报错!
首先咱们理清问题根源:你当前的根URL配置(chatbottest/urls.py)里只设置了admin/和globalHaksik/两个路径规则,但当你访问网站根目录(比如http://localhost:8000/)时,这个空路径('')没有对应的URL规则,所以Django找不到匹配的路由,就抛出错误了。
下面给你两种简单的解决办法,选一个适合你的就行:
方法一:把根路径指向你的globalHaksik应用
这是Django开发里最常用的做法,把网站根目录的请求转发给globalHaksik应用的URL配置去处理。你只需要修改chatbottest/urls.py文件:
假设你原来的根urls.py代码是这样的:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('globalHaksik/', include('globalHaksik.urls')), ]
现在新增一行空路径的映射:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('globalHaksik.urls')), # 新增这行,处理根路径请求 path('globalHaksik/', include('globalHaksik.urls')), ]
不过要记得,得给globalHaksik应用配置对应的视图哦,比如先写个简单的测试视图:
在globalHaksik/views.py里添加:
from django.http import HttpResponse def home(request): return HttpResponse("欢迎来到我的Django站点!")
然后在globalHaksik/urls.py里添加对应的路由:
from django.urls import path from . import views urlpatterns = [ path('', views.home, name='home'), # 处理根路径转发过来的请求 ]
方法二:直接在根URL里定义根路径视图
如果只是想快速测试,不想通过应用转发,也可以直接在根urls.py里写个简单视图处理根路径:
from django.contrib import admin from django.urls import path from django.http import HttpResponse def home(request): return HttpResponse("这是网站首页!") urlpatterns = [ path('admin/', admin.site.urls), path('globalHaksik/', include('globalHaksik.urls')), path('', home, name='home'), # 直接处理根路径 ]
小提示
修改完URL配置后,记得重启Django开发服务器,不然新的路由规则不会生效哦!
内容的提问来源于stack exchange,提问作者song
相关产品推荐
相关产品推荐

