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

VS Code开发应用本地正常,Heroku部署遇500错误及数据库列缺失问题

解决Heroku部署后SQLite缺失author_id列导致的500错误

问题根源

本地开发时你修改了blog_posts表结构(新增author_id列),但部署到Heroku后未同步执行数据库迁移,导致线上数据库表结构与本地不一致,触发查询失败。

修复步骤

  • 确认迁移文件有效性
    检查本地项目的迁移目录(如Django的migrations、Flask-SQLAlchemy的迁移脚本),确保新增author_id列的迁移逻辑已正确生成。

  • 在Heroku上执行迁移
    终端登录Heroku账号后,执行对应框架的迁移命令:

    # Django项目
    heroku run python manage.py migrate
    # Flask项目(使用Flask-Migrate)
    heroku run flask db upgrade
    

    该命令会将本地迁移脚本应用到Heroku数据库,补全缺失的author_id列。

  • 验证修复效果
    迁移完成后重新访问应用,若仍有错误,通过以下命令实时查看日志排查:

    heroku logs --tail
    

后续建议

  • 每次修改数据库表结构后,必须生成新迁移文件,部署后立即执行迁移操作。
  • 生产环境避免使用SQLite:Heroku文件系统为临时存储,应用重启后数据会丢失,建议切换到PostgreSQL(Heroku提供免费实例)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 01:58:09