1
A
回答
4
我對這個任務
#lib/initializer_helpers.rb
module InitializerHelpers
def self.skip_console_rake_generators &block
skip(defined?(Rails::Console) || defined?(Rails::Generators) || File.basename($0) == "rake", &block)
end
def self.skip_rake_generators &block
skip(defined?(Rails::Generators) || File.basename($0) == "rake", &block)
end
def self.skip_generators &block
skip(defined?(Rails::Generators), &block)
end
def self.skip_console &block
skip(defined?(Rails::Console), &block)
end
private
def self.skip(condition, &block)
raise ArgumentError.new("no block given") if block.blank?
unless condition
yield
end
end
end
# use it
InitializerHelpers.skip_console do
# not executed in console
end
更新特殊助手:如果你只是提取這個想法寶石https://github.com/olegantonyan/initializer_helpers
1
你可以檢查Rails的控制檯定義:
run_code unless defined?(Rails::Console)
2
需要檢查服務器是否在運行,您可以使用這一個
if defined?(Rails::Server)
# do something usefull
end
相關問題
- 1. Firebase Android - 跳過初始化
- 2. 結果沒有初始化?
- 3. 如何在運行rake任務時跳過加載Rails初始化程序?
- 4. SparkContext沒有SBT運行初始化後
- 5. 過濾器沒有初始化的EntityManager
- 6. 在Rails初始化器運行之前運行rspec「之前」塊
- 7. 類沒有初始化器?
- 8. PHP初始化,如果沒有設置
- 9. 如何關閉文件,如果我沒有初始化它?
- 10. 如何初始化跳過列表?
- 11. 如何初始化圖形?因爲它說它沒有初始化
- 12. 靜態初始化塊跳過
- 13. 初始化器在Rails中運行的頻率如何?
- 14. Rails的初始化過程
- 15. 運行耙db:遷移沒有一些初始化器
- 16. 如果已經初始化,通過shell重新初始化rbenv
- 17. skrollr.min.js沒有初始化
- 18. 類AppDelegate沒有初始化器
- 19. 如何防止初始化器在運行rails生成時運行
- 20. ObjectInputStream沒有初始化
- 21. 類'ProductDetailViewController'沒有初始化器
- 22. Rails初始化器在遷移數據庫時運行
- 23. 的TextView沒有初始化
- 24. Rails的初始化
- 25. 類'ViewController'沒有初始化器
- 26. 初始化在運行時
- 27. 我的VC沒有初始化器
- 28. JqGrid沒有初始化
- 29. 初始化含有初始化列表
- 30. 類沒有初始化