見出し画像

PicTweet Railsのエラーを解消しよう

Railsのエラー画面

デバッグ

デバッグとは、プログラムの誤り(バグ)を見つけて、手直しすることです。
>>デバッグ作業に便利なpry-railsというGemを利用

binding.pry(バインディングプライ)

binding.pryは、pry-railsを追加すると扱えるようになる機能
binding.pryという記述をソースコードの中にすると、binding.pryが存在する箇所でRailsの処理を一時停止し、その状態でコンソールを起動

Gemfileに以下の記載があるか確認

gem 'pry-rails'

あった!

createアクション内にbinding.pryを記述

app/controllers/tweets_controller.rbファイルへ
~省略~

def create
binding.pry  ←ここ
Tweet.create(tweet_params)
end

~省略~

>>binding.pryという文字列を記述した上でローカルサーバーを立ち上げる
binding.pryを記述したのはツイートを作成する部分の処理

・わざとエラー設定した

ツイートを投稿してみる

通常通り、ツイートを投稿し、createアクションを実行

SENDボタンを押すと、処理が停止

「投稿完了ページ」へ遷移せずに、タブを確認すると下記の画像のようにロードのアイコンが回っている状態になっていれば成功

ターミナルを確認しよう

[1] pry(#<TweetsController>)> params
=> <ActionController::Parameters {"authenticity_token"=>"7imvHaB3Z9fle2uEDeNY5mBJebreoWRs6Scs8zcEHuL5FHWhXS8eOpX8Db8i13SGuV1F8T9fTbgSCuBFkrOmDQ==", "tweet"=>{"image"=>"", "text"=>"aaa"}, "commit"=>"SEND", "controller"=>"tweets", "action"=>"create"} permitted: false>

検証が済んだら binding.pryを削除して保存しておく

この記事が気に入ったらサポートをしてみませんか?