デバッグツールのbinding.pryの基本的な使い方の備忘録
- gemfileに
binding.pry
を記述 - ターミナルでbundle insatall を実施する
- 動作を止めたいところ(変数の中身を確認したいところ)に挿入する。
user_contorller.rb
def login
@user = User.find_by(
email:params[:email],
password:params[:password]
)
binding.pry
if @user
flash[:notice] = "ログインしました"
redirect_to action: :index
else
@error_message = "メールアドレスまたはパスワードが間違っています"
@email = params[:email]
@password = params[:password]
render action: :login_form
end
end
アクションに該当する動作を実施するとターミナルに以下のように表示される。
40: def login
41: @user = User.find_by(
42: email:params[:email],
43: password:params[:password]
44: )
45: binding.pry
=> 46: if @user
47: flash[:notice] = "ログインしました"
48: redirect_to action: :index
49: else
50: @error_message = "メールアドレスまたはパスワードが間違っています"
51: @email = params[:email]
52: @password = params[:password]
53: render action: :login_form
54: end
55: end
あとはterminalで確認したい中身の変数をたたけば確認できる!
[1] pry(#<UsersController>)> @user
=> nil