Soru Bir döngü sonunda nesnenin yazdırılması konsollarını durdur


Eğer, bir modelin tüm örneklerinin arasında döngü yaparsam ve her birinden bir şey çıkarırsam, irb hala tüm nesneyi basacaktır.

Nesne yüzlerce çizgi alarak biterse, aslında aradığım şeyi görmeden önce uzun bir yol olacaktır. Bunu ray konsolunda devre dışı bırakmanın bir yolu var mı?


60
2017-11-08 07:16


Menşei




Cevaplar:


Yankıyı genel olarak devre dışı bırakmak istemezseniz, bir komut satırında birden çok ifadeyi de arayabilirsiniz. Sadece son ifadenin çıkışı görüntülenecektir.

big_result(input); 0

80
2017-11-08 08:47



bu aslında istediğim şey. - dsp_099
Harika teşekürler! Çok basit. - blindsnowmobile


Aramak conf.echo = false ve dönüş değerini basmayacak. Bu sadece irils konsolu değil, irb oturumu için çalışır.

Bunu kalıcı hale getirmek istiyorsanız, bunu irb yapılandırmanıza ekleyin.

echo 'IRB.conf[:ECHO] = false' >> $HOME/.irbrc

82
2017-11-08 07:20



Bunu her zaman varsayılan olarak görmek istediğinizde ne yapardınız? - Peter Berg
@Accipheran Sanırım, Rails başlatıcıları işe yarayacaktı. - lulalala
Cevabınız için teşekkürler, aslında sadece çizgiyi atmayı öğrendim IRB.conf[:ECHO] = false, benim .irbrc dosyasında onunla ilgilenirdi. Tabii ki, bütün irb oturumlarımdaki yankıyı da çevirir, ama ben buna katılıyorum. - Peter Berg
Bu raylar konsolunda geçici seçenek olarak iyidir. Teşekkürler - ogelacinyc


Konsolun geçici olarak geri dönüş değerlerini yazdırmasını durdurmak için nil Döngünün veya işlevin sonunda, ancak dönüşe basmadan önce ifade.

record.each do |r|
  puts r.properties
end; nil

Yazmayı azaltmak istiyorsanız, ya da bir sayı da olabilir. Ama düşünemediğim senaryolarda kafa karıştırıcı olabilir.

record.each do |r|
  puts r.properties
end; 0

26
2017-11-27 11:27



Bu yardımcı oldu. Teşekkürler - Neeraj Gupta
Bu benim için çalışan tek kişi. - Hugo
sen en iyisin! - sickrandir