Jeśli, powiedzmy, przejdę w pętli przez wszystkie instancje danego modelu i wyprowadzę coś z każdego, na końcu irb nadal wydrukuje cały obiekt.
Jeśli obiekt zajmie setki linii, minie dużo czasu, zanim zobaczę, czego tak naprawdę szukałem. Czy jest sposób, aby to wyłączyć w konsoli railsów?
ruby-on-rails
ruby
console
irb
dsp_099
źródło
źródło
big_result(input); nil
Zadzwoń
conf.echo = false
i nie wydrukuje wartości zwracanej. Działa to dla każdej sesji irb, nie tylko konsoli Railsów.Jeśli chcesz, aby był trwały, dodaj go do swojej konfiguracji irb.
echo 'IRB.conf[:ECHO] = false' >> $HOME/.irbrc
źródło
IRB.conf[:ECHO] = false
w moim pliku .irbrc załatwiło sprawę. To oczywiście wyłącza echo we wszystkich moich sesjach irb, ale nie przeszkadza mi to.Aby tymczasowo powstrzymać konsolę przed wypisywaniem zwracanych wartości, możesz wydać
nil
instrukcję na końcu pętli lub funkcji, ale przed naciśnięciem return.record.each do |r| puts r.properties end; nil
Lub też może to być liczba, jeśli chcesz ograniczyć pisanie. Ale może to być mylące w scenariuszach, których nie mogę wymyślić.
record.each do |r| puts r.properties end; 0
źródło