我正在 Heroku (Cedar) 上部署我的 Rails 应用程序,我可以选择 3 个关于预编译我的资产的选项,我选择了 Heroku 在部署时预编译我的资产的选项。
当我推送时,我收到一个错误,它无法访问我的数据库(在预编译期间)。那么,如何让Rails在预编译时不连接数据库呢?我不知道为什么要设置它,因为我无法想象预编译需要访问数据库的场景。
我在某处看到了在预编译时禁用初始化应用程序的解决方案,这是通过将以下内容添加到 application.rb 来实现的(在 environment/production.rb 中设置它不起作用):
config.assets.initialize_on_precompile = false
我尝试添加这一行,它可以工作,但我不知道这是否是一个好的解决方案。这不会使您可能使用的一些插件在预编译期间无法加载资产,从而影响最终结果吗?