それは古い質問ですが、半年前に機能していたコードが機能しない理由がわかりません。ですから、所有者だけが自分の投稿にアクセスできるようにしたいと思います。私はそれがこのように書くことができると思いました:
def create
@post = current_user.posts.new params[:post]
if @post.save
flash[:notice] = 'Post created'
redirect_to @post
else
render :new
end
end
および編集およびその他のコントローラー
def edit
if (current_user.id == @post.user_id)
@post = Post.find params[:id]
else
flash[:notice] = 'You are not owner!'
end
end|
しかし、私がログインしたときに取得するビューでは、次のようになります。
undefined method `user_id' for nil:NilClass
私の問題はどこにありますか?