前提・実現したいこと
Ruby on railsを学んでおります。
index.html.erbへの変数の受け渡しおよび表示は上手くいったのですが、show.html.erbへの変数の受け渡しに難儀しております。
試行錯誤しておりますが、なかなか解決できず、お力をお借りしたいです。
発生している問題・エラーメッセージ
undefined method `id' for nil:NilClass
該当のソースコード
Routers.rb Rails.application.routes.draw do root to: 'messages#index' resources :messages end Controller.rb class MessagesController < ApplicationController def index @messages = Message.all end def show @message = Message.find(params[:id]) end def new end def create end def edit end def show end def update end def destroy end end index.html.erb <ul> <% @messages.each do |message| %> <li><%= link_to message.id, message %> : <%= message.content %></li> <% end %> </ul> show.html.erb <h1>id: <%= @message.id %> のメッセージ詳細ページ</h1> <p><%= @message.content %></p>
試したこと
show関連のview、controllerの表記をindexと全く同じにしても、同様のエラーが出てしまいます。
index.html.erbの表示ではいくつかのデータが表示されるため、テーブルが空ということは無いかと思います。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。