簡単です!!rails開発でエラーと戦おう、pryを使ったデバッグの方法!!

More than 1 year has passed since last update.

プログラミングする上で避けることができないものの一つに、エラーがあるだろう。

どんなにすごいプログラマーでも初めは多くのエラーと戦ってきたはずである。

そこで、エラーに負けないために、エラーの対応の仕方を学んでいこうという記事である。

ここでは、pryを用いてエラーに対応していく。

Gemの追加

Gemfile
group :development, :test do
  gem 'pry-rails'  # rails consoleでirbの代わりにpryを使うことができる
  gem 'pry-doc'    # methodを表示する
  gem 'pry-byebug' # デバッグを実施(Ruby 2.0以降)
  gem 'pry-stack_explorer' # スタックをたどることができる
end

基本的に、本番環境では使わないとして、開発環境やテスト環境のみとした。
初めは、それぞれのgemの役割は気にしなくてもよい。
Gemfileに追加したら, bundle intsallをします。

デバッグの方法

ビュー、コントローラー、ヘルパー、モデルなどでデバッグを行いたい部分に,binding.pryと記述だけである。すると、そこでサーバーが停止する。サーバーが停止すると、インタラクティブなモードになり、変数名を入力することで、そこに格納されている値やparamsなどを確認できる(なぜかインデントがずれて、表示されています)
スクリーンショット 2016-05-31 14.53.43.png

スクリーンショット 2016-05-31 14.30.27.png

スクリーンショット 2016-05-31 14.42.38.png

また、以下の4つのコマンドでソースコード内を移動することができます。
next : 次の行に移動する
step : 次の行か、メソッド内の行に移動する
exit : 次のブレークポイントまで実行する
finish : 現在のスタックトレース(画面に表示されているメソッド)が終わるまで実行する

と、言った感じです。pryを使いこなして、うまくエラーがでたり、思ったような動きをしないときは、デバッグをして、効率良く開発していきましょう!!

Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account log in.