haayaaa’s diary

書きたい事があったら気軽に書いて行きます。普段は渋谷でRailsを使ったお仕事してます。

Railsでよく出現するエラー

Railsでよく出現するエラー

 

NoMethodError

メソッドを使用されたインスタンスのクラスにそのメソッドが定義されていなかったり、リクエストで指定されたコントローラーにそのアクションがない場合に起こるエラー。

メソッドを使用するインスタンスのクラスに定義されたメソッドに直す、インスタンスが違うクラスになってしまっていたら直すことで解決する。

 

ArgumentError

引数がおかしいとき起こるエラー。

引数の中身を直す等で解決する。(インスタンス変数にきちんと情報渡せていないなどを直す)

 

syntax error

Rubyの文法が間違っている場合に起きるエラー。

→endの数、カンマの打ち忘れなどを直すと解決する。

 

Template is missing

指定されたビューファイルが無い時などに起こるエラー。

アクションに対応したビューファイルを作る、リダイレクトさせることで解決する。

 

Routing Error

リクエストしたルーティングが設定されていなかったり、間違ったルーティングをリクエストしているときに起こるエラー。

ルーティングの記述を正しくする、ビューでパスをリクエストしている箇所の記述を正しくすることで解決する。

 

Pending migration error

実行してないマイグレーションファイルがあると起こるエラー。

マイグレーションファイルを実行すれば解決する。

 

 

まとめ

*エラー画面で表示されるのは、おかしい箇所ではなく、処理が進められなくなったときである。おかしくなった原因は処理のもっと前段階であることもある。

*このエラーだからここを見るという固定観念にとらわれない。