どうも中田です。
今までrailsの開発はIDEを使わずテキストエディタだけでやってきたのですが、
いい加減デバッガでも使おうかと思い、今回に至ります。
pry-debuggerを使ってのデバッガです。
pryとはrubyのデバッガのirbのパワーアップ版って感じのイメージでしょうか。
Gemfileに追加
pry-debuggerやらその他もろもろをGemfileに書きます。
group :development do gem 'pry-rails' gem 'pry-doc' gem 'pry-byebug' gem 'pry-stack_explorer' end
終わったら、$ bundle install
しておきます。
ブレイクポイント追加
ソースコード内にbinding.pry
を入れるとその次の行がブレイクポイントになります。
そして、$ rails s
で起動
該当の部分に達すると…
4: class LoginController < ApplicationController 5: include Ftp 6: 7: def sign_in 8: binding.pry => 9: e_mail = params['e_mail'] 10: password = digest(params['password']) 11: uuid = params['uuid'] 12: platform = params['platform'] 13: device_token = params['device_token'] 14: [1] pry(#<LoginController>)>
はい、止まりました。
これでデバッグ可能です。
ちょっとコマンド
これがあればとりあえずってものです。
調べればもっとたくさんあります。
コマンド | 説明 |
---|---|
$ | ソース表示 |
p xxxx | xxxxの内容を表示 |
next | ステップオーバー |
step | ステップイン |
continue | 次のブレイクポイントまで |
finish | ステップアウト |
備考
前のコマンドをEnterだけで連続して実行できるという設定です。
Pry::Commands.command /^$/, "repeat last command" do _pry_.run_command Pry.history.to_a.last end
久しぶりですが、こんなところで。