例如,如果我遍历给定模型的所有实例并从每个实例中输出一些东西,最后,irb 仍将打印整个对象。
如果对象最终占用了数百行,那么在我看到我真正要找的东西之前还有很长的路要走。有没有办法在 Rails 控制台中禁用它?
例如,如果我遍历给定模型的所有实例并从每个实例中输出一些东西,最后,irb 仍将打印整个对象。
如果对象最终占用了数百行,那么在我看到我真正要找的东西之前还有很长的路要走。有没有办法在 Rails 控制台中禁用它?
如果您一般不想禁用回显,也可以在一个命令行中调用多个表达式。只会显示最后一个表达式的输出。
big_result(input); 0
调用conf.echo = false
它不会打印返回值。这适用于任何 irb 会话,而不仅仅是 Rails 控制台。
如果您想使其永久化,请将其添加到您的 irb 配置中。
echo 'IRB.conf[:ECHO] = false' >> $HOME/.irbrc
要暂时停止控制台打印返回值,您可以nil
在循环或函数结束时发出一条语句,但在按下返回之前。
record.each do |r|
puts r.properties
end; nil
或者它也可以是一个数字,如果你想减少打字。但是在我想不到的情况下,它可能会令人困惑。
record.each do |r|
puts r.properties
end; 0
这让我很沮丧,因为我使用的是pry-rails
gem,有些解决方案对我不起作用。
所以这分两步起作用:
;
到最后一个命令的末尾就足以使打印输出静音。ActiveRecord::Base.logger.silence do
# code here
end
如果你想运行这个
User.all do |user|
puts user.first_name
end
那么这将确保没有其他内容打印到屏幕上:
ActiveRecord::Base.logger.silence do
User.all do |user|
puts user.first_name
end
end;
(不要忘记;
最后的)