Heroku部署Django项目时提示ModuleNotFoundError找不到'spotify.urls'模块
Django部署Heroku提示ModuleNotFoundError: No module named 'spotify.urls'的解决方案
该报错本质是Django运行时无法找到spotify应用下的urls模块,本地运行正常说明代码逻辑无问题,大概率是部署阶段的配置遗漏、文件提交异常、路径不匹配导致,可按以下步骤逐一排查解决:
- 第一步:检查settings.py配置
确认INSTALLED_APPS列表中已经添加了spotify应用,示例配置如下:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', # 新增下方这行配置 'spotify', ] - 第二步:检查spotify应用的模块标识
确认spotify应用目录下存在空的__init__.py文件,该文件是Python将目录识别为可导入模块的必要标识,如果缺失可以手动新建一个空的同名文件即可。 - 第三步:检查git提交配置
确认你的.gitignore文件没有忽略spotify目录或者目录下的urls.py文件,执行git status检查spotify/urls.py是否已经被git追踪,如果未被追踪,执行git add spotify/提交所有应用文件后再重新推送到Heroku。 - 第四步:检查项目目录结构
确保推送到Heroku的代码中,spotify文件夹和manage.py、存放settings.py的bio_project配置文件夹处于同一层级,不要把所有代码嵌套在额外的外层文件夹中推送到仓库。 - 第五步:调整启动配置(可选)
如果以上步骤都确认无误,可以修改你的Procfile启动命令,手动指定项目根目录,示例配置:web: gunicorn bio_project.wsgi --pythonpath '/app'
内容的提问来源于stack exchange,提问作者edward
相关产品推荐
相关产品推荐

