Rails
1<h3>Comments</h3> 2<% if @post.comments.any? %> 3 <ul> 4 <% @post.comments.each do |comment| %> 5 <li> 6 <%= comment.body %> 7 <%= link_to '[DELETE]', 8 post_comment_path(@post.id, comment.id), 9 method: :delete, 10 class: 'command', 11 data: {confirm: 'sure?'} 12 %> 13 </li> 14 <% end %> 15 </ul> 16<% end %>
(show.html.erb)
上記コード8行目、post_comment_path(@post.id, comment.id)
について質問です。
ルーティングにて、DELETE postsのIDは 『:post_id』なのに、
何故 上記コードでは**@post.id**なのでしょうか?
postsのIDが 『:id』の時に**@post.id**であり、
『:post_id』の時は**”@post.post_id”**のようになる、と思っていました。
以下、ルーティングです。
@post.post_idに対して、僕の認識に誤りがあれば教えて頂けると嬉しいです。
routes
1post_comment GET /posts/:post_id/comments/:id(.:format) comments#show 2 PATCH /posts/:post_id/comments/:id(.:format) comments#update 3 PUT /posts/:post_id/comments/:id(.:format) comments#update 4 DELETE /posts/:post_id/comments/:id(.:format) comments#destroy
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/06 10:29 編集
2020/06/06 11:32 編集