問題は以下のコードです
<%= button_to t('.delete'), @post, :method => :delete, :class => :destroy %>
私の投稿モデルには、削除に依存する多くの関係があります。ただし、上記のコードは投稿を削除するだけで、その関係はそのまま残ります。問題は、メソッド delete と destroy が異なり、メソッド delete はオブジェクトをインスタンス化しないことです。
したがって、投稿を「削除」する代わりに「破棄」する必要があります。
<%= button_to t('.delete'), @post, :method => :destroy %>
ルーティングエラーが発生します。
[POST] "/posts/2" に一致するルートはありません
<%= button_to t('.delete'), @post, Post.destroy(@post) %>
ボタンをクリックせずに投稿を削除します。
誰でもこれで私を助けることができますか?
アップデート:
アプリケーション.js
//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require bootstrap-modal
//= require bootstrap-typeahead
//= require_tree .
レーキルート
DELETE (/:locale)/posts/:id(.:format) posts#destroy
投稿モデル
has_many :tag_links, :dependent => :destroy
has_many :tags, :through => :tag_links
タグモデル
has_many :tag_links, :dependent => :destroy
has_many :posts, :through => :tag_links
問題: 投稿を削除すると、すべての tag_links が破棄されますが、タグはまだ存在します。