rails commands ruby-on-rails ruby console irb

ruby on rails - commands - Detener la consola de rieles para que no imprima el objeto al final de un ciclo



rails console (3)

Llame a conf.echo = false y no imprimirá el valor de retorno. Esto funciona para cualquier sesión de IRB, no solo para la consola de Rails.

En caso de que quiera hacerlo permanente, agréguelo a su configuración de IRB.

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

Si, por ejemplo, recorro todas las instancias de un modelo dado y saco algo de cada una, al final, irb seguirá imprimiendo el objeto completo.

Si el objeto termina tomando cientos de líneas, será un largo camino antes de que vea lo que realmente estaba buscando. ¿Hay alguna manera de desactivar esto en la consola de rails?


Para detener temporalmente que la consola imprima los valores de retorno, puede emitir una instrucción nil al final de su bucle o función, pero antes de presionar la tecla de retorno.

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

O puede ser un número también, si desea reducir el tipeo. Pero puede ser confuso en los escenarios, que no se me ocurre.

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


Si no desea desactivar el eco en general, también puede llamar a varias expresiones en una línea de comando. Solo se mostrará la salida de la última expresión.

big_result(input); 0