mam ten mały zadanie Zgrabiarka:Jak wymusić RAILS_ENV w zadaniu prowizji?
namespace :db do
namespace :test do
task :reset do
ENV['RAILS_ENV'] = "test"
Rake::Task['db:drop'].invoke
Rake::Task['db:create'].invoke
Rake::Task['db:migrate'].invoke
end
end
end
Teraz, kiedy mogę wykonać, będzie ignorować RAILS_ENV starałem się twardej kodu. Jak wykonać to zadanie zgodnie z oczekiwaniami?
Tak, to wygląda trochę mniej hackowato niż przygniatając z RAILS_ENV –
Dla mnie wywoływanie dodatkowych procesów Rake wygląda dużo * więcej * hacky. –
To lepsze rozwiązanie niż niszczenie zadań w środowisku w niszczycielski sposób. Jeśli zrobisz to w ten sposób, możesz użyć go jako zależności w innym zadaniu, nie powodując całkowitej katastrofy. Chcesz uruchomić zadanie rake w trybie testowym? Uruchom zadanie w trybie testowym. Próbuje sfałszować tryb testowy, a oni prawdopodobnie zmieniają wszystko z powrotem w tryb, w którym faktycznie jesteś, a potem jest szkicowy. –