私はこのレールチュートリアルに取り組んでいました: " http://guides.rubyonrails.org/getting_started.html " そして、個々の投稿 (5.7) のタイトルとデータを表示することになっている部分に到達し、データを表示するはずだったときにエラーが発生したため、@post.inspect
/ app/views/posts/show.html.erb に入力すると nil になり、すべての投稿を一覧表示するインデックス ページと同じですが、チェックしてデータはデータベースに正しくあります。これが私のコントローラーファイルです:
class PostsController < ApplicationController
def new
end
def create
@post = Post.new(post_params.permit(:title, :text))
@post.save
redirect_to @post
end
private
def post_params
params.require(:post).permit(:title, :text)
end
def show
@post = Post.find(params[:id])
end
def index
@posts = Post.all
end
end
エラー:
NoMethodError in Posts#show
Showing /home/hiram/rails/meme/app/views/posts/show.html.erb where line #3 raised:
undefined method `title' for nil:NilClass
Extracted source (around line #3):
1 <p>
2 <strong>Title:</strong>
3 <%= @post.title %>
4 </p>
5
6 <p>
Rails.root: /home/hiram/rails/meme