Django项目报错ModuleNotFoundError:找不到mysite.notes模块求助
解决Django中ModuleNotFoundError: No module named 'mysite.notes'的问题
你的问题出在导入路径错误上。从目录结构能看到,notes是和mysite平级的项目根目录下的应用,并不是mysite的子模块,所以用from mysite.notes import views肯定找不到模块。
这里有两种解决办法,推荐第二种更符合Django的最佳实践:
方法一:直接修正导入语句
把mysite/urls.py里的导入代码改成:
from django.contrib import admin from django.urls import path, include from notes import views # 去掉前面的mysite. urlpatterns = [ path('admin/', admin.site.urls), path('', views.home, name="home") ]
方法二:使用include拆分URL配置(推荐)
这种方式更利于项目扩展,是Django官方推荐的做法:
- 在
notes目录下新建一个urls.py文件,写入以下内容:
from django.urls import path from . import views urlpatterns = [ path('', views.home, name="home"), ]
- 修改
mysite/urls.py的内容,改用include引入应用的URL配置:
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('notes.urls')), # 引入notes的urls配置 ]
额外提醒
别忘了确认mysite/settings.py里已经把notes添加到INSTALLED_APPS中,否则Django无法识别这个应用:
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'notes', # 确保这一行存在 ]
内容的提问来源于stack exchange,提问作者Irina Cotici
相关产品推荐
相关产品推荐

