NoMethodError in [コントローラー名]#[アクション名]→undefined method `[キーワード]' for #<>
→[コントローラー名]の[アクション名]に[キーワード]のメソッドが定義されていない。
Sprockets::Rails::Helper::AssetNotFound in [コントローラー名]#[アクション名]→The asset "" is not present in the asset pipeline.
unknown attribute '[カラム名]' for [テーブル名].
→[テーブル]に[カラム]が見つからない。
【原因】
引っ張ってきたインスタンス変数やテーブルのカラムにないカラム名を指定してしまっている。
私の場合編集画面で、
edit.html.haml
= form_with model: @item, do |f|
= f.file_field :[カラム名]
で指定したカラムがテーブルに存在していませんでした。
【対処】
①マイグレーションファイルに指定のカラムがあるか
②マイグレーションファイルの指定のカラムにスペルミスはないか
を確認
ミスがあった場合、
マイグレーションファイルを修正
→rails dbコマンド周りはこちら【逆引きrails dbコマンド集】
参考記事