Я хотел бы улучшить существующую задачу Rails 4 db:test:prepare
, чтобы вызвать дополнительную задачу db:seed
для загрузки некоторых статических справочных данных в мою тестовую базу данных. Я написал эту пользовательскую задачу в Lib/задач/test_seed.rake:Изменение окружающей среды Внутреннее расширение рейка
Rake::Task['db:test:prepare'].enhance do
Rails.env = "test"
Rake::Task['db:seed'].invoke
end
Однако rake db:test:prepare
задача была еще высева дб развития, пока я явно установлено соединение с «тест». Это то, что сработало:
Rake::Task['db:test:prepare'].enhance do
Rails.env = "test"
ActiveRecord::Base.establish_connection('test')
Rake::Task['db:seed'].invoke
end
Хотя, это кажется неестественным. Есть ли лучший/правильный способ улучшить эту задачу db:test:prepare
, которая первоначально срабатывает против среды разработки?
Спасибо.