我正在编写一个包含一些 rake 任务的 gem。我在 before_configuration 方法中有一些代码,我想在应用程序在运行时加载我的 gem 时运行这些代码,而不是在使用 rake 运行任务时运行。我怎样才能确定呢?
lib/mygem/tasks.rake:
namespace :mygem do
task :dosomething do
puts "DONE"
end
end
lib/mygem/railtie.rb:
require "rails"
module Mygem
class Railtie < ::Rails::Railtie
config.before_configuration do
#is_rake_task = ?
if !is_rake_task
# Do something
end
end
end
end