【Rails デバック】コントローラに書いてターミナルで変数の中身を見たい

Ruby on Rails

railsのデバッグ方法、一つできるようになってのでメモ書きです。

コントローラで処理しているこの変数の中身が見たい、と思った時、logger.debug(@post)を使います。さらに中身を見やすくしたいときはlogger.debug(@post.to_yaml)と言うように.to_yamlを追加します。

def indexfinish
@post = Post.all.order(created_at:'desc')
logger.debug(@post.to_yaml)
end

コントローラを忘れずに保存してアクションに対応したviewを開きます。この場合は/posts/indexfinishでした。
※サーバーに接続しておいてね

その後ターミナルを見ると以下のように@postの中身が見れました〜


Post Load (0.2ms) SELECT “posts”.* FROM “posts” ORDER BY “posts”.”created_at” DESC LIMIT ? [[“LIMIT”, 11]]
↳ app/controllers/posts_controller.rb:52
#<ActiveRecord::Relation [#<Post id: 2, title: “デバッグ”, body: “できたよ”, created_at: “2018-06-01 05:28:50”, updated_at: “2018-06-01 05:28:50”, week: nil>, #<Post id: 1, title: “失敗から立ち直る嬉しさ”, body: “失敗から立ち直る嬉しさ”, created_at: “2018-05-30 06:44:34”, updated_at: “2018-05-30 06:44:34”, week: nil>]>

なんか調べた結果と見え方がちょっと違ったのですが問題なし!簡単でした!
これでますます新しいことができるようになる気がする …..!たぶん。
でも、もう少し見やすくできないかなぁ😫

お世話になったサイト
Railsでよく使うDebug

 

コメント

タイトルとURLをコピーしました