binding.pryが実行できません。
現在、Ruby,sinatra,sqlite3でwebアプリを作っています。
binding.pryを試しに使ってみようと思い、以下の手順で実行しましたが上手くいきません。
間違っている箇所や考えられる間違え方があれば、ご指摘お願いします。
[binding.pry実行手順]
1.pryをインストール後、Gemファイルにgem 'pry'
と、app.rbファイルにrequire 'pry'
を追加。
2.bundlerをインストールするために、bundle install --path vendor/bundle
を実行。
3.コード内にbinding.pry
を追加し、rubyを起動(ruby app.rbを実行)。
4.binding.pryを書いたerbファイルにアクセス。
以上の手順で行いました。ここのサイトを参考に進めました。
ここまでエラーはないのですが、手順4を実行後、ターミナルに参考サイトにあるようなコードの実行内容が表示されませんでした。
[参考サイトの実行結果]このような表示です↓
[私の実行結果]↓
% ruby myapp.rb [2021-08-09 21:43:44] INFO WEBrick 1.4.2 [2021-08-09 21:43:44] INFO ruby 2.6.6 (2020-03-31) [x86_64-darwin19] == Sinatra (v2.1.0) has taken the stage on 4567 for development with backup from WEBrick [2021-08-09 21:43:44] INFO WEBrick::HTTPServer#start: pid=10002 port=4567 ::1 - - [09/Aug/2021:21:43:59 +0900] "GET / HTTP/1.1" 200 - 0.0082 ::1 - - [09/Aug/2021:21:43:59 JST] "GET / HTTP/1.1" 200 0 - -> / D, [2021-08-09T21:44:15.825361 #10002] DEBUG -- : (0.9ms) SELECT sqlite_version(*) D, [2021-08-09T21:44:15.825825 #10002] DEBUG -- : Movie Load (0.1ms) SELECT "movies".* FROM "movies" ::1 - - [09/Aug/2021:21:44:15 +0900] "GET /movies HTTP/1.1" 200 123 0.0295 ::1 - - [09/Aug/2021:21:44:15 JST] "GET /movies HTTP/1.1" 200 123 - -> /movies
app.rbの中はこのようになっています。
binding.pryは下の方に記述しています。↓
require 'bundler/setup' require 'sinatra' require 'sinatra/reloader' require 'sinatra/activerecord' require 'pry' class Movie < ActiveRecord::Base; end set :database, {adapter: 'sqlite3', database: 'sample_app.sqlite3'} get '/' do erb :home end get '/hoge' do erb :hogedayo end get '/movies' do @movies = Movie.all erb :'movies/index' end get '/movies/new' do erb :'movies/new' end post '/movies' do binding.pry #ここです!! Movie.create(name: params[:name]) redirect '/movies' end
解決方法がわかる方がいましたら、アドバイスをよろしくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。