4
在Rails中,您可能希望您的環境在啓動時執行不同的操作,具體取決於您是否正在運行rake任務。例如,我的使用案例是在應用程序啓動時將幾百MB的緩存加載到內存中。我們顯然不希望這種情況發生在耙指令上。如果我正在運行rake命令,如何在rails中檢測?
---更新--- 以下是可靠的解決方案,並與heroku合作。
is_rake = (ENV['RACK_ENV'].blank? || ENV['RAILS_ENV'].blank? || !("#{ENV.inspect}" =~ /worker/i).blank?)
這不是一個可靠的解決方案。很多字符串都可能隱藏在ENV中。以下是您的模式可以匹配的單詞列表:http://www.morewords.com/contains/rake/ – Mori 2013-03-21 03:09:34