実現したいこと
link_toでPOSTしたい。
前提
Ruby on RailsでXのような投稿アプリをつくっています。
投稿詳細から投稿削除をする動作でエラーが発生しました。
発生している問題・エラーメッセージ
No route matches [GET] "/posts/3/destroy"
該当のソースコード
erb
1<div class="main posts-show"> 2 <div class="container"> 3 <div class="posts-show-item"> 4 <p> 5 <%= @post.content %> 6 </p> 7 <div class="post-time"> 8 <%= @post.created_at %> 9 </div> 10 <div class="post-menus"> 11 <%= link_to("編集", "/posts/#{@post.id}/edit") %> 12 <%= link_to("削除", "/posts/#{@post.id}/destroy", {method: "post"}) %> 13 </div> 14 </div> 15 </div> 16</div> 17
試したこと
Rails 7ではTurboが導入されたのに対して、data-methodはRails 6以前のrails-ujsを使った書き方となっていることが分かった。
自分なりに該当コードをdata-turbo-method属性に書き換えてみました。
<%= link_to "削除", "/posts/#{@post.id}/destroy", data: { turbo_method: post} %>
ActionView::SyntaxErrorInTemplate in PostsController#show
上記のエラーが出てしまいました。
初歩的な質問で申し訳ございませんが、正しい訂正をご教授頂けると幸いです。
補足情報
Rails 7.1.2 / ruby 3.2.2

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/11/15 03:45