たとえば、特定のモデルのすべてのインスタンスをループして、それぞれから何かを出力すると、最後に、irb はオブジェクト全体を出力します。
オブジェクトが何百行もかかる場合は、実際に探していたものを確認するまでに長い道のりが必要です。Railsコンソールでこれを無効にする方法はありますか?
たとえば、特定のモデルのすべてのインスタンスをループして、それぞれから何かを出力すると、最後に、irb はオブジェクト全体を出力します。
オブジェクトが何百行もかかる場合は、実際に探していたものを確認するまでに長い道のりが必要です。Railsコンソールでこれを無効にする方法はありますか?
通常、エコーを無効にしたくない場合は、1 つのコマンド ラインで複数の式を呼び出すこともできます。最後の式の出力のみが表示されます。
big_result(input); 0
呼び出しconf.echo = false
ても、戻り値は出力されません。これは、Rails コンソールだけでなく、任意の irb セッションで機能します。
永続的にしたい場合は、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