概要
本記事ではrailsでデバッグする際に使用するbinding.prybについてです。
会社でお恥ずかしい思いをしましたので記事として残しておきます。
経緯
先日、会社でこのようなやりとりがありました。
私) 「センパイ、エラーが出てるんですけど何が原因でどこでエラーが出てるかわからないっす」
先輩エンジニア)「とりあえずbinding.pry使いなよ。」
私) 「バ、バ、バインデングぷらい,,,,はにゃ?」
先輩エンジニア)「,,,え??binding.pry知らないの???それはもうif分知らないでjs書いてるのと一緒だよww(ジョーク)」
binding.pryとは
railsで処理を一時的にストップさせるデバックツールの一つです。
エラーの発生箇所にbinding.pry
と記載することで処理を一時停止させることができます。
binding.pryはただ処理を止めるだけでなく、オブジェクトの参照や変更したり、その後の処理を一行ずつ実行することができます。
binding.pryは.rbファイルだけでなく、.erbファイルでも使用することができます。
exit
でbinding.pryを止めることができます。
参考記事
https://qiita.com/STHEXA/items/1de2411cb3987066c9b9
https://tech.smarthr.jp/entry/2021/11/08/143649
https://pikawaka.com/rails/pry
https://asapoon.com/ruby/rails/2936/binding-pry/