我无法理解initialize_on_precompile
的用途。什么完全是否意味着它是假的(特别是与Heroku有关)?这是真的是什么意思?
如果这个问题过于宽泛/模糊,我很难道歉,但我似乎无法在任何地方找到答案。
答案 0 :(得分:4)
此选项在Rails 3.x
之前可用,因为当您运行rake assets:precompile
时,它会初始化应用程序并尝试连接到数据库。因此,将此选项设置为false
会阻止它。因此,如果您遇到与数据库相关的任何问题rake assets:precompile
将无法正常运行,则此选项可确保其正常工作。
来自Rails Git Repo:
initialize_on_precompile
更改告诉预编译任务在不调用Rails的情况下运行。这是因为预编译任务默认在生产模式下运行,并将尝试连接到指定的生产数据库。请注意,使用此选项在本地编译时,您无法在依赖于Rails资源(例如数据库)的管道文件中拥有代码。
在Rails 4.x
中,此选项已被删除,不再需要。 Rails 4现在总是在预编译资产之前加载初始化程序和数据库配置