我在我的gemfile(gem "lhm", "~> 2.2.0", require: false
)中有这个gem,我希望在所有迁移中都需要它。行为类似于在所有规范文件中要求spec_helper
的行为。
我考虑过使用bin/rails
或bin/rake
做一些事情,但我不希望它在所有任务中都需要,只需要迁移。 IE浏览器。 rake db:migrate
或现在的别名rails db:migrate
答案 0 :(得分:0)
由于您可能没有使用lhm
进行所有迁移,因此我建议仅将require "lhm"
添加到您正在使用的迁移中。但要回答你的问题,你可以使用rake的enhance
方法:
将以下内容添加到lib/tasks/something.rake
:
namespace :load do
namespace :lhm do
desc "This just loads lhm"
task lhm: :environment do
require "lhm"
end
end
end
Rake::Task['db:migrate'].enhance(['load:lhm'])
作为示例,请参阅here