ActiveRecord::RecordNotFound in NotesController#showと表示されました。
Couldn't find Note with 'id'=showとさらに表示されました。
notes_controller.rbのprivateメソット以下のset_noteメソットがおかしいようで
def set_note
@note = Note.find(params[:id])←ここの部分がおかしい
end
と表示されました。
idがshowメソットに記されていないという認識で間違いないですよね?
SequelProを見ても、notesテーブルにきちんと投稿したカラムにidが書かれています。
何かコマンドを打ち忘れ、データが反映されていないのでしょうか?
回答お願いします。
routes.rbは
Rails.application.routes.draw do
devise_for :users
resources :users, only: [:index, :show, :edit, :update]
resources :notes, only: [:show, :create, :edit, :update, :destroy]
get'/top' => 'home#top'
get'/connection' => 'home#connection'
get'/notes/new' => 'notes#new'
post'/notes' =>'notes#create'
get'/notes' =>'notes#index'
get'/show' =>"notes#show"
get'/edit' =>'notes#edit'
patch'/notes/:id' =>"notes#update",as:'update_note'
delete'/notes/:id' =>"notes#destroy",as:'destroy_note'
post '/like/:note_id' => 'likes#like', as: 'like'
delete '/unlike/:note_id' => 'likes#unlike', as: 'unlike'
root 'home#top'
get'/about' => 'home#about'
end
のようになっています。
idはshowである、のように記述していないのでは?と思って困っています。
お願いいたします。
回答1件
あなたの回答
tips
プレビュー