【小ネタ】SQLクエリを発行した後の結果がターミナルに表示されるが煩わしいときに使える?
先輩に教えてもらった小技だ。rails c
で変数を格納したいだけのときに、わざわざターミナルにずらっと結果を出力して欲しくないときに使える。変数に格納する回数が多いときに使えるかも。。。
一般的な書き方だと下記のようになる。オブジェクトの詳細が出力される。
irb(main):030:0> w = Word.last Word Load (5.6ms) SELECT "words".* FROM "words" ORDER BY "words"."id" DESC LIMIT $1 [["LIMIT", 1]] => #<Word:0x00007fba14c9a4c0 id: 163, name: "テキトー", start_at: nil, end_at: nil, created_at: Mon, 18 Jul 2022 16:55:28.281496000 JST +09:00, updated_at: Mon, 18 Jul 2022 16:55:34.531823000 JST +09:00, act...
毎度上記のようにオブジェクトの詳細は見たくない!というときに、下記のように末尾に;nil
を加える。
irb(main):031:0> w = Word.last;nil Word Load (0.4ms) SELECT "words".* FROM "words" ORDER BY "words"."id" DESC LIMIT $1 [["LIMIT", 1]] => nil
こうすると、nilを最後に評価してくれるので余計な?出力がされない。便利?
(了)