update_all
メソッドupdate_all
メソッドは指定された条件に合うレコードを一度にアップデートしますbefore_save
、after_save
など)やバリデーションが実行されません# 例:すべてのユーザーの active 状態を false に設定
User.update_all(active: false)
destroy
と delete
メソッド1) destroy
メソッド
before_destroy
、after_destroy
)を実行しますdestroy
メソッドは関連するモデルとの関係を整理するなどの追加作業を行うため、データの整合性を維持するのに役立ちますが、処理時間が長くなる可能性がありますので注意が必要です2) delete
メソッド
delete
メソッドはデータベースからレコードを直接削除し、いかなるコールバックも実行しませんdelete
は処理速度が速いですが、関連データが存在する場合、データの整合性問題が発生する可能性があります# destroy 使用例
user = User.find(1)
user.destroy
# delete 使用例
User.delete(1)