You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Heroku部署Django项目遇ModuleNotFoundError问题求助

解决Django部署Heroku时的ModuleNotFoundError(找不到'opportunities.settings.heroku_staging')
  • 检查settings模块的文件结构与命名

    • 确认opportunities/settings/目录下存在heroku_staging.py文件,且文件名完全匹配大小写(Heroku的Linux环境严格区分大小写,本地Windows/macOS可能不敏感)
    • 确保settings目录下有__init__.py文件(空文件即可),Python需要这个文件来识别该目录为可导入模块
  • 验证Heroku环境变量与dyno状态

    • 用Heroku CLI执行heroku config:get DJANGO_SETTINGS_MODULE,确认输出是opportunities.settings.heroku_staging,无拼写错误或多余空格
    • 若修改过环境变量,执行heroku restart重启dyno,确保配置生效
  • 排查依赖与构建日志

    • 确认requirements.txt包含Django 4.0及所有必要依赖,无遗漏
    • 查看Heroku构建阶段日志:heroku logs --tail --source build,检查依赖安装是否有报错,确保构建过程完整
  • 确认项目结构与Procfile配置

    • 确保manage.py和opportunities主app目录处于同一层级,Heroku能正确识别项目根目录
    • 检查Procfile内容是否正确,例如:web: gunicorn opportunities.wsgi --log-file -,其中opportunities.wsgi需匹配你的项目结构
  • 本地模拟Heroku环境测试

    • 在本地终端设置环境变量后运行检查命令:
      export DJANGO_SETTINGS_MODULE=opportunities.settings.heroku_staging
      python manage.py check
      
    • 如果本地也报错,说明问题出在settings模块本身或本地路径配置;如果本地正常,继续排查Heroku的Git文件同步问题
  • 检查.gitignore配置

    • 查看.gitignore文件,确认没有误排除heroku_staging.py或settings目录下的文件
    • 执行git ls-files,确认opportunities/settings/heroku_staging.py已被Git追踪并推送到Heroku

内容的提问来源于stack exchange,提问作者compmonks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 13:27:46