前提・実現したいこと
railsでeditページを表示させようしています。
初心者で焦ってしまい、ますますわからなくなってしまいました。
何かしらのアドバイス、厳しめのお言葉でも頂けると大変嬉しいです。
発生している問題・エラーメッセージ
Routing Error No route matches [GET] "/admins/genres/1/edit" ルーティングの問題だと思うのですが 試してもエラーメッセージがこのままで変わりません。
該当のソースコード
ruby
1 2**routes.rb** 3Rails.application.routes.draw do 4 devise_for :admins, controllers: { 5 sessions: 'customers/sessions', 6 passwords: 'customers/passwords', 7 registrations: 'customers/registrations' 8 } 9 10 get '/admins/genres' => 'admins/genres#index' 11 get '/admins/genres/[:id]/edit' => 'admins/genres#edit' 12 13end 14 15 16**genres_controller.rb** 17class Admins::GenresController < ApplicationController 18 19 def edit 20 @genre = Genre.find(params[:id]) 21 end 22 def update 23 @genre = Genre.find(params[:id]) 24 @genre.update(genre_params) 25 redirect_to admins_genre_path 26 end 27 28 private 29 def genre_params 30 params.require(:genre).permit(:name) 31 end 32 33end 34 35 36**edit.html.erb** 37<h3>編集</h3> 38 39<%= form_for (@genre, url: {controller: 'genres', action: 'edit'}) do |f| %> 40<%= f.text_field :name %> 41<%= f.submit '変更を保存する' %> 42<% end %> 43 44 45
試したこと
privateメソッドを検索して知り書きました。
form_forにurlも指定しており他に直せばいい箇所が思いつきません。
わかる方いましたらお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。