Django运行报ModuleNotFoundError: No module named 'template'如何解决
问题根因
Django启动时会尝试导入你指定的项目核心配置包,你的配置文件里默认声明项目包名为template,但实际你大概率修改了项目根目录下和项目同名的初始文件夹的名称,或者运行启动命令的路径错误,导致Python无法找到对应的template包。
修复步骤
- 首先确认你的项目目录结构,找到你存放settings.py的文件夹的名称(该文件夹就是你的项目核心包,默认名称和你执行django-admin startproject时指定的项目名一致),记为
你的项目包名 - 修改settings.py中的两处配置:
- 将
ROOT_URLCONF = 'template.urls'替换为ROOT_URLCONF = '你的项目包名.urls' - 将
WSGI_APPLICATION = 'template.wsgi.application'替换为WSGI_APPLICATION = '你的项目包名.wsgi.application'
- 将
- 打开项目根目录下的
manage.py文件,找到该行配置:os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'template.settings'),将其中的template替换为你的项目包名 - 检查存放settings.py的文件夹下是否存在
__init__.py文件,没有的话新建一个空的该文件即可,作用是让Python将该文件夹识别为可导入的包 - 确认运行启动命令
python manage.py runserver时,当前工作目录是存在manage.py的项目根目录
额外排查项
如果修改后仍然报错,检查你当前使用的Python虚拟环境是否正确,是否安装了项目依赖的所有包。
内容的提问来源于stack exchange,提问作者user17083547
相关产品推荐
相关产品推荐

