商品購入画面への遷移でのNameError

・エラー内容

商品詳細ページから商品購入ページへ遷移する為に「購入ボタン」にパスを設定し、ボタンを押したところ以下のエラーが出た。

f:id:Fujisan3776:20201026185434p:plain

 

・原因

「購入ボタン」を押して送られるparamsの中に「id」というカラムの項目が存在しないのに、indexアクションでインスタンス変数に「id」を代入しようとした為。

※paramsの内容はエラー画面の下方、及びbinding.pryで確認できる。

f:id:Fujisan3776:20201026185411p:plain

 

・対処法

今回設定したパスで送られるparamsに含まれるカラム情報は「item_id」なので、インスタンス変数に代入する記述を以下のように変更した。

f:id:Fujisan3776:20201026185733p:plain

f:id:Fujisan3776:20201026190013p:plain