This article is based on the following. https://pikawaka.com/rails/pry
Pry is a function that allows you to use methods etc. on the rails console like Ruby's irb.
pry-rails is a gem ** that allows you to launch pry instead of ** irb when you launch the console. By default, irb starts when you enter console mode with the rails c command. You can use pry by adding gem and executing bundle install as shown below.
Gemfile#abridgement
gem 'pry-rails`
binding.pry You can stop the process at the point you wrote. I use it for debugging and testing. Debugging is finding non-optional processing (bugs).
books_controller.rb
 def create
    @book = BookOrder.new(bookorder_params)
    binding.pry
    if @book.save
      redirect_to root_path
    else
      render :index
    end
  end
When I stopped the process with binding.pry, the terminal became as follows.
The console has started and is waiting for input.
You can check the contents by entering "params" and "@book" here.

The following is an example of commands that can be used while executing binding.pry. Please see the official if you like. https://github.com/rweng/pry-rails
| Command | Contents | 
|---|---|
| step | step in | 
| next | step over | 
| finish | step out | 
| continue | End debugging (continue interrupted processing) | 
| [Variable name] | Output the contents of the variable | 
| $ [Method name] | See method definition | 
| show-stack | See stacks and races (pry-stack-explorer required) | 
| !!! | End the process. No matter how many binding.pry there are after that, it can be exited, but rails s etc. ends | 
| show-routes | Check current routes | 
| show-models | Check current models | 
| show-source | Check class, module and method definitions | 
| show-doc | Check class, module, and method documentation | 
At Rails, I feel every day that it is a key to keep track of "the flow of MVC" and "what I am doing for what". I think there are some pains that only a beginner can have, but programming is fun and I think it's the best investment for me in the future, so Let's enjoy learning!
Recommended Posts