Help us understand the problem. What is going on with this article?

Rails Better Errorsでデバックする (Ajaxでのエラーも)

More than 3 years have passed since last update.

概要

「Better Errors」というgemを使ってデバック作業をすると捗ります。
見やすいUIで、ブラウザ上でのデバックも簡単に行うことが出来ます。

また、ajaxのエラーもデバック出来るのでとても便利です。

導入も使い方も非常に簡単なのでとりあえず、自分のプロジェクトに入れてしまいましょう。

準備

Gemfile
gem 'better_errors'

上記を、Gemfileに記述して、Bundle installをするだけ。development環境にだけ設定しましょう。

使い方

画面確認

Better Errors導入前は以下のようなエラー画面のはずです。

スクリーンショット 2015-09-05 12.32.42.png

導入後は以下のような画面に変わります。

スクリーンショット 2015-09-05 12.33.49.png

画面説明

スクリーンショット_2015-09-05_12_33_49.png

エラーメッセージ

エラーメッセージの確認が出来ます。どんなエラーが出ているか示してくれているので注目部分です。

デバック画面

「irb」や「rails c」と同じように使うことが出来ます。エラーとして動作が止まった部分までの変数も確認することが出来るので便利です。

他、「トレース情報」や「リクエスト情報」、「ローカル変数」も表示してくれるのでこちらも必要なときはチェックです。

ajax時にエラーを確認する

ajaxでエラーが起きているときも「Better Errors」なら確認出来ます。
ajaxでエラーが出た直後に以下にアクセスすると、起こっているエラーの画面が表示されます。後は通常と同じようにデバック出来ます。(ポート番号は適宜)
http://localhost:3000/__better_errors

おまけ

基本的なことはBetter Errorsでこと足りると思いますが、pry-railsも便利なのでこちらもチェックすると完璧でしょう。

また、単純な変数チェックをするときはコード中に「raise」と入れてあげると動作が止まってそこまでの変数をチェック出来るので使っています。pry-railsでいう「binding.pry」と同じように使っています。
(正しい使い方かは知りませんが、とりあえず出来る)

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away