18748


[Rails4 ActiveRecordのdestroyで例外を発生させる -
ayaketanのプログラミング勉強日記](http://ayaketan.hatenablog.com/entry/2013/10/01/182342)

> Rails4からdestroy!があるようだが、destroy_all!は存在しない。  
>  単体の削除は下記のように記述すればよい

<https://stackoverflow.com/a/4177747/1979953>

> There is delete, delete_all, destroy, and destroy_all.

**Rails4を想定しています** 。  
Rails4で`destory!`が導入された記事を発見しました（上記日本語ページ）

`delete`, `delete_all`, `destroy_all`には存在しないのはなぜでしょうか？  
作成、更新は例外を発生させることで成功失敗の処理を分けることができるのに、削除系のみ`if`による判定でしょうか？


CC BY-SA 3.0
2015-11-12T13:26:28.303
18743
2015-11-12T14:20:35.910
2017-05-23T12:38:55.307
-1
9008
question
ruby-on-rails rails-activerecord
Rails4のActiveRecordの削除系で例外を発生させれるのはdestroy!だけ？


`delete` `delete_all`はコールバックを呼ばないのでActiveRecordのレベルで例外を投げることはありません。

`create_all`はありませんし、`update_all`はありますが例外を投げる`update_all!`はありません。

`create!` `update!` `destroy!` は揃っています。


CC BY-SA 3.0
2015-11-12T14:20:35.910
18748
2015-11-12T14:20:35.910
5793
18743
answer