assets:initialcompile在initialize_on_precompile为false时连接到DB

我的config/application.rbconfig.assets.initialize_on_precompile = false并且bundle exec rake assets:precompile仍尝试连接到我的数据库。 我将database.yml中的database.yml名称更改为不存在的数据库,以便我可以判断它何时尝试连接。

 $ be rake assets:precompile rake aborted! FATAL: database "aaa" does not exist 

根据Heroku,此配置仅在Rails 3.x中可用。 您还可以在Rails 4上的rails / rails repo中看到资产的配置不再存在: https : //github.com/rails/rails/blob/master/railties/lib/rails/application/configuration。 RB

对于快速资产编译,我在生产中使用一个简单的sqlite3配置。 它总是连接无论如何。 无论如何,您的database.yml文件不应该从生产中的repo中获取。 您可以将Heroku或简单的capistrano符号链接用于共享文件夹或任何其他自定义解决方案。