投稿フォーム送信後に投稿したタイトルと本文の詳細ページに行きたいのですが以下のようなエラーが出ます。
Couldn't find Post with 'id'=id
def show
@post=Post.find(params[:id])
end
初心者で申し訳ありませんが教えてくださる方よろしくお願いします。
index.html.erb
<% @posts.each do |post| %>
<%=post.title %>
<%=post.body %>
<%=link_to "Show", post_path(post) %>
<%=link_to "Edit", edit_post_path(post) %>
<%=link_to "Destroy",post_path(post),method: :delete, data: { confirm: 'Are you sure?'} %>
<%end%>
<%= form_for :post, url: posts_path do |f| %>
<p><label>タイトル</label></p> <p><%= f.text_field :title %></p> <p><label>本文</label></p> <p> <%= f.text_area :body %></p> <p><%= f.submit 'create book' %></p> <% end %>コントローラ
def index
@posts=Post.all.order(created_at: 'asc')
end
def show
@post=Post.find(params[:id])
end
def new
end
def create
@post = Post.new(post_params)
@post.save
redirect_to post_path(:id)
end
def edit
post=Post.find(params[:id])
end
def update
@post=Post.find(params[:id])
@post.update(post_params)
redirect_to post_path(:id)
end
def destroy
@post=Post.find(params[:id])
@post.destroy
redirect_to posts_path
end
private
def post_params
params.require(:post).permit(:title, :body)
end
end
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/12/22 13:50
2017/12/22 14:16