ActiveRecord オブジェクトを削除するにはどうすればいいですか? 質問する

ActiveRecord オブジェクトを削除するにはどうすればいいですか? 質問する

ActiveRecord オブジェクトを削除するにはどうすればよいですか?

私は見たアクティブレコードクエリ削除に関しては、私が確認した限りでは何も記載されていません。

  1. 削除者id:

  2. 現在のオブジェクトを次のように削除します: user.remove

  3. 条項に基づいて削除できますかwhere?

ベストアンサー1

それはdestroydestroy_all例えば

user.destroy
User.find(15).destroy
User.destroy(15)
User.where(age: 20).destroy_all
User.destroy_all(age: 20)

あるいは、およびコールバックや依存する関連付けオプションを強制しないdeleteおよび を使用することもできます。delete_all:before_destroy:after_destroy

User.delete_all(condition: 'value')主キーなしでレコードを削除できるようになります

: @hammady のコメントによると、user.destroyUser モデルに主キーがない場合には機能しません。

注 2 : @pavel-chuchuva のコメントによると、destroy_allwith Conditions とdelete_allwith Conditions は Rails 5.1 で非推奨になりました - guides.rubyonrails.org/5_1_release_notes.html を参照してください。

おすすめ記事