最近我遇到了一个问题,我的数据库方案更改没有反映在 Heroku PG 上。我仔细检查了一下,发现迁移和种子都成功了。更奇怪的是,数据库方案更改在暂存的 Heroku 部署上运行良好(在完全相同的迁移/种子之后)。经过一番搜索后,我了解到您应该在迁移后通过以下方式重新启动heroku:
heroku restart --app=app_name
我从来没有这样做过(我不完全是一个老手,但我之前运行过大量的迁移,并且从来没有因为这个特殊原因重新启动heroku)。
我真的需要在每次迁移后重新启动heroku吗?或者这更多是个案问题?
如果您通过迁移对数据库进行更改,那么您将需要在 Heroku 上重新启动应用程序。当 Rails 在生产模式下启动时,它会缓存数据库模式。迁移在正在运行的 Web 进程不知道的一次性进程中运行。因此,要让它接受更改,您至少需要重新启动 Web 进程。如果您的应用程序在部署并运行迁移时处于空闲状态,它将在应用程序启动时获取新架构。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)