LoginSignup
36
29

More than 5 years have passed since last update.

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

Posted at

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

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

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

ここでは、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を使いこなして、うまくエラーがでたり、思ったような動きをしないときは、デバッグをして、効率良く開発していきましょう!!

36
29
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
36
29