如何抑制db:load:schema的輸出?運行在Rake中抑制輸出任務db:schema:load
bundle exec rake db:schema:load
與-s
,-q
,甚至VERBOSE=false
選項使得輸出無差異;出現我不想看到的相同的「create_table ... add_index ...」垃圾。我從一個自定義的Rake任務中調用它,並且我不希望用戶每次都看到所有這些。
UPDATE:
我通過解決與@Deefour一些指導的問題:
system "bundle exec rake db:schema:load -s RAILS_ENV=#{Rails.env} >NUL"
>NUL
是Windows機器,基於Unix的可以使用> /dev/null
。
而不是
Rake::Task['db:schema:load'].invoke
,因爲我一直在做我的自定義任務。請注意,此解決方案特定於Windows機器。對於基於Unix的機器,我想你應該能夠使用下面接受的解決方案。
你是如何運行在耙文件上面的命令? – deefour
Rake :: Task ['db:schema:load']。invoke – aguazales
我發現使用單獨的'system'調用非常緩慢,所以請看@witwitch建議的'quietly'或'silence_stream'。 –