我最近将当前正在运行的应用程序迁移到新的“dev”数据库计划。但是,更新后我现在无法POST到我的Django应用程序中的特定URL。该应用程序在我的本地开发环境中的功能仍然相同,所以我很好奇它是否与数据库迁移的某些部分有关,例如当我将应用程序转换为维护模式时。
Heroku日志中的错误几乎是标准的500错误,所以它不是很具描述性:
POST ... dyno=web.1 queue=0 wait=0ms service=70ms status=500 bytes=5
正在运行的应用程序中的所有代码都没有更改 - 我只使用Heroku在其迁移指南中描述的过程迁移了数据库。
答案 0 :(得分:0)
我只能想象你的应用程序现在没有指向正确的数据库。
您是否确认数据库已启动并正在运行且包含您的数据?
您可以使用以下链接连接到数据库并发出查询:
heroku pg:psql HEROKU_POSTGRESQL_<color> --app your-app
其次,heroku pg:info --app your-app
的输出是什么?它是否表明新的dev数据库也是DATABASE_URL
?如果没有,请尝试
heroku pg:promote HEROKU_POSTGRESQL_<color> --app your-app
然后再试一次。这会将数据库URL设置为dyno中的DATABASE_URL
配置变量,这可能是您的应用程序用于连接的内容。
如果这不能解决问题,请在help.heroku.com上打开支持请求,并附上您的应用名称等详细信息,以便我们进行调查。