它将参数作为replacement_emails传递,这是正确的。从日志中:
Parameters: {"utf8"=>"✓", "authenticity_token"=> ... "replacement_emails"=>"1"}, "commit"=>"submit", "id"=>"1"}
但它没有在数据库中设置。日志中没有错误消息,没有。它与SQLite一起开发。
有什么想法?关于它为什么在开发中工作但在Heroku上没有生产?
答案 0 :(得分:2)
今天我遇到类似的问题并且可以解释发生了什么事时,我遇到了你的问题。
在Heroku上运行Rails迁移不会自动导致应用程序重新启动,因此您的新代码可能会通过其现有数据库连接看到数据库的旧视图。这可能会导致一些奇怪的行为(比如访问在执行迁移之前不存在的列)。
手动重启应用程序将使其重新连接到数据库并查看更改。
回滚或重新部署也会导致应用程序重新启动并重新连接到数据库。
请记住在运行rails迁移后重新启动应用程序。
答案 1 :(得分:1)
在完成部署的回滚,然后重新部署之后 - 它突然起作用。不确定是什么问题。