我是否可以在我的rails初始化程序中利用环境变量来确定rake任务是否正在执行?喜欢 - rake db:migrate db:seed
我有一堆初始化程序可以跳过大多数rake任务:
更新
我可能会后来后悔 - 但以下似乎有效 -
在我的application.rb中 - 添加了以下内容:
config.is_rake = (File.basename($0) == 'rake')
然后我在
上检查值config.active_record.observers = :audit_observer unless config.is_rake
在我的弹簧初始化器中的其他地方
SPRING_CONTEXT = org.springframework.context.support.FileSystemXmlApplicationContext.new(SPRING_XML_CONFIG_FILES) unless Rails.application.config.is_rake
根据回答found here