tawara's blog

雑記。個人の見解です。

【小ネタ】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を最後に評価してくれるので余計な?出力がされない。便利?

(了)