「debugger」その使い方・・・そして気付く。
こんにちは、マリンです。
皆さんはデバッグしながら開発してますか?
すみません。当たり前ですよね・・・
しかし私は勉強中、こいつの使い方やタイミングがいまいちわかりませんでした。
今回初めてこの「debugger」メソッドってやつを自主的に使ったので記念に、
そしてさらに調べてみて気づいたことがあったのでメモっときます。
(気付いたと言っても今まで知らなかっただけの事なので期待しないでください。)
debuggerメソッドとは?
byebug gemによって使うことができるデバッグ用のメソッドです。
アプリの挙動がおかしかったり、バグりそうなところがあれば、
コード内に直接このメソッドを入れることで状態を見ることができます。
そして気づいたこと
Ruby1.9.3以前ではこのdebugger
を使いますが、
それ以降ではbyebug
でいいんですね・・・
詳しくはこちらを。
ということで、以下byebug
にします。
使い方
前提
まず今回の状況ですが、ポートフォリオの個別ページである
show
で使いました。
work = テーブル名
name = ポートフォリオのタイトル
image = 画像
contents = 説明
image
の中身が今はないので、それでもちゃんと動くか心配で試しました。
使い方
使用にはbyebug gem
が必要です。
いつからか定かではありませんが、Rails 4.2.6からは
rails new
した時点でデフォルトで含まれるようです。
def show @work = Work.find(params[:id]) byebug # <=これです end
このようにコードに直接書き込みます。
ブラウザで該当ページを表示すると、
1: class WorksController < ApplicationController 2: def index 3: end 4: 5: def show 6: @work = Work.find(params[:id]) 7: byebug => 8: end 9: end (byebug)
こんな感じでサーバーを立ち上げてるターミナルに出てくるので、
あとはrails console
みたいな感じで使うことができます。
(byebug) @work.name "My First" (byebug) @work.contents "My first portfolio" (byebug) @work.image nil
終了するときはCtrl + Dです。
そして使い終わったらメソッドを消しておきましょう。
いちいち出てきちゃうので。
まとめ
デバッグツールはこの他にも色々あるようですね。
今回は種類については詳しく調べてはいませんが、
当分は余計なことしないで大人しくこれ使っときます。
名前かわいいしw