前提・実現したいこと
index.htmlのページからshow.htmlで詳細ページにいこうとするとエラー文がでます。
発生している問題・エラーメッセージ
NoMethodError in Blogs#show undefined method `blog_text' for nil:NilClass
該当のソースコード
show.html <%= simple_format(@blog.blog_text) %>
それ以外のソースコード
index.html <% @blogs.each do |blog| %> <p><%= blog.blog_title %></p> <ul class="more_list"> <li><%= link_to '詳細', "/blogs/#{blog.id}", method: :get %></li> </ul>
routes.rb root 'blogs#top' get 'blogs' => 'blogs#index' get 'blogs/new' => 'blogs#new' post 'blogs' => 'blogs#create' delete 'blogs/:id' => 'blogs#destroy' get 'blogs/:id/edit' => 'blogs#edit' patch 'blogs/:id' => 'blogs#update' get 'blogs/:id' => 'blogs#show'
blogs_controller def index @blogs=Blog.all.order("created_at DESC") end def new end def create Blog.create(blog_title: blog_params[:blog_title], blog_text: blog_params[:blog_text], user_id: current_user.id) end def destroy blog = Blog.find(params[:id]) if blog.user_id == current_user.id blog.destroy end end def edit @blog = Blog.find(params[:id]) end def update blog = Blog.find(params[:id]) if blog.user_id == current_user.id blog.update(tweet_params) end end def show @blog = Blog.find(params[:id]) end private def blog_params params.permit(:blog_title, :blog_text) end
補足情報(FW/ツールのバージョンなど)
railsのバージョン:5.2
超初心者なので、具体的な方法を教えていただけると助かります。
コードを見る限りこのエラーメッセージにはならないような気がするのですが、
* 発生しているエラーメッセージをもっと長く(どのファイルのどの行で発生しているのか知りたい)
* エラーの発生しているページのURL(正常なURLになっているのか知りたい)
を加えてもらえないでしょうか。