ビンとそれに関連するすべてを削除する次のものがあります。それは素晴らしい機能です。
モデルビン
class Bin < ActiveRecord::Base
has_many :savedtweets, :dependent => :destroy
before_destroy :mod_newtweets
def mod_newtweets
Newtweet.where(:tweet_id => @bin.savedtweets.pluck(:tweet_id)).update_all(:status => 'new')
end
end
ただし、ビンを破棄し、すべてを削除しますが、:mod_newtweets を実行して他のテーブルとその列を更新しません。
これをコントローラーに入れると、正常に動作します。
Newtweet.where(:tweet_id => @bin.savedtweets.pluck(:tweet_id)).update_all(:status => 'new')
私はすべてが正しく行われていると思っていました。