我的Django应用为何找不到views.py中定义的函数?
Django Hello World项目问题解决方案
函数找不到报错修复
该问题由urls.py中函数调用格式错误导致:你已经导入了views模块,但使用home函数时没有指定所属模块,修改main/urls.py代码如下即可:
from django.urls import path from . import views urlpatterns = [ path('', views.home, name='home'), ]
PyCharm空行提示说明
expected 2 blank lines, found 1是PEP8代码规范提示,和函数找不到的问题完全无关,不会影响代码正常运行。
该提示触发原因是Python规范要求顶级函数定义前需要保留2个空行,你当前home函数上方仅保留了1个空行。要消除提示可以调整views.py格式:
from django.shortcuts import render from django.http import HttpResponse def home(response): return HttpResponse('Hello World')
可选检查项
如果修改后仍然无法正常访问,可以排查两个配置:
- 确认项目根目录
settings.py的INSTALLED_APPS列表中已经添加了main应用 - 确认项目根目录
urls.py中已经导入了main应用的路由配置,参考代码:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('main.urls')), ]
内容的提问来源于stack exchange,提问作者JalenWithTheHead
相关产品推荐
相关产品推荐

