!がつくときとつかないときの違い

!がつくときとつかないときの違い

結論、処理が失敗したときの挙動が違う

saveを使う場合

掲示板作成ファームなど、処理が失敗する可能性が想定されて、失敗した場合に何かハンドリングしたい場合

save!を使う場合

削除機能など、処理が必ず成功すると想定されていて、万が一失敗したらそこで処理を中断したい場合