前提・実現したいこと
railsでスコア管理アプリを作っています。
投稿したスコアを削除する削除機能を実装中にエラーになりました。
idが無いと言われてますがビューで指定したつもりです。
どうか解決方法を教えて下さい。
発生している問題・エラーメッセージ
ActionController::UrlGenerationError in Scores#index No route matches {:action=>"show", :controller=>"scores", :id=>nil}, missing required keys: [:id]
該当のソースコード
コントローラー
ruby
1def destroy 2 @score = Score.find(params[:id]) 3 @score.destroy 4 reddirect_to root_path 5 end
ビュー
ruby
1<%= link_to "削除", score_path(@score.id), method: :delete, class:"score_destroy" %>
ルーティング
ruby
1Rails.application.routes.draw do 2 devise_for :users 3 root to: "scores#index" 4 resources :scores 5end
試したこと
エラーでurlとルーティングの事を言われているのでビューとroutesのpathを見ましたが間違っていないように思います。
methodでdeleteを指定しているにも関わらずshowアクションを呼び出そうとしているのでそこで調べたらbutton_toに変更するという記事が出てくるのでlink_toからbutton_toに変更したがエラーは変わらなかった。
https://gyazo.com/b6d8ca2c2dcee8760f9ec45234b440f3
補足情報(FW/ツールのバージョンなど)
ruby on rails ver.6.0.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。