4
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【備忘録】Rails エラー一覧

Last updated at Posted at 2020-11-03

#はじめに

今まで課題をこなしながら出会ってきたエラー文たちをまとめておきます。
といっても、解決策はケースバイケースだと思うので、こういうエラー文はこう考えるといいかもしれないです・・・程度の備忘録です。

#エラー文一覧

Name Error

エラー1.png

(例1)
Name Error in Books#index
undefind local variable or method 'book'
Did you mead? @book @book

ローカル変数かメゾットの'book'が定義されていない。
@book@booksではないのか。
=> 考えられること
スペルミスが多いです。もう一度指摘されているページを見てみましょう。

(例2)
Name Error in Books#index
uninitialized constant user::Relationship
24 passive-relationships.find-by(following_id:user_id).oresent?

初期化されていない定数 user::Relationship
(=定義されたクラスを読むことができない)
=> 考えられること
こちらも、スペルミスの場合が多いです。model,view,controllerを見てみましょう。

No Method Error

エラー2.jpeg

(例)
No Method Error in Books#create
undefind method 'user' for nil :nilclass

メゾットエラー(定義されていないメゾットが呼び出されました)
'user'というメゾットが定義されていません。
=> 考えられること
①in Books#create → Booksテーブルにuserカラムを追加してない
②もし、Did you meadn?があるなら、それを記述しなおす。
ちなみに、カラム指定なんてしない'each'がよくこのエラー文で出てました(解決忘れてしまった)。

###Actioncontroller::UnknownFormat

エラー3.png

(例1)
Action Controller::Unknown Format in Homescontroller#top

アクションに対するviewファイルがないエラー
=> 考えられること
viewファイルを作成してないのかもしれません。

(例2)
Action COntroller::Url Generation Error in Member::Addresses#index
No route matches
{action=> "edit" :controller=>"member/addresses#index" id=>nil}
missing required keys:[id]

editで指定している箇所にidがないので、マッチできずに、URLの生成に失敗しました。
=> 考えられること
controllerのeditにidを指定してないかもしれません。

###Template is missing

エラー4.png

(例)
Template is missing
controller render:show

テンプレートがありません。
=> 考えられること
controllerで設定しているアクションのviewが設定されていない場合があります。

###ArgumentError

エラー5.png

(例)
ArgumentError in Books#index
first argument in form cannot contain nil or be empty

引数エラー
フォームの初めの引数はnilを含むことも空にすることもできないです。
=> 考えられること
例えば、絶対に値を入れないといけないログインユーザーの名前を編集画面で空白にしてアップデートする際などに、起こります。
そのため、①空白でアップデートする際にエラーメッセージを出力させる②バリデーションを書くことで解決できる場合があります。

###LoadError

エラ−6.png

(例)
Load Error in Usercontroller#show
unable to autoload constant Relationship

ロードエラー
定数のRelationshipを自動ロードできません。
=> 考えられること
私の場合、フォロー機能にてmodel の Relationshipのつづりが間違っていました。

こんな感じです。
また増えたら更新していきます。

4
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?