LoginSignup
1
1

More than 5 years have passed since last update.

【メモ】!が有る無しの違い

Posted at
!のつくメソッドを多用するのはおすすめしない。
例えばこれだとsave!でこけた場合destroy!の正当性が不明になる。そうなるときちんとエラー内容を確認できなくなる。

というコードレビューをもらった。
正当性が不明??なんでエラー内容が確認できない??っていう状況。

とある人のブログで、

saveとsave!の違いは、保存出来なかった場合の振る舞いにあります。

・saveメソッドは、保存できない場合falseを返します。
・save!メソッドは、保存できない場合例外ActiveRecord::RecordInvalidが発生します。

ということらしい。知らなかった。

質問したら、save!のほうが失敗した時にブラックボックス化になるらしい。

なので、

save! -> save
destory! -> destroy

に変更した。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1