コールバック:登録や削除イベントの前後に挟む任意の処理のこと
| コールバックの種類 | 代表的な用途 |
|---|---|
| before_validation | 検証前の値の正規化 |
| after_validation | 検証結果(エラーメッセージの正規化) |
| before_save before_create before_update |
saveのために裏側で行いたいデータ準備を行う。 検証エラーを出してもユーザー側からどうしようもない状態異常を防ぐために例外を出す。 |
| after_save after_create after_update |
モデルの状態に応じて他のモデルの状態を変えるなどの、モデルの状態に連動した挙動を行わせる。 検証エラーを出してもユーザー側からどうしようもない状態異常を防ぐために例外を出す。 |
| before_destroy | 削除してOKかをチェックし、ダメなら例外を出すなどして防ぐ。 |
| after_destroy | そのモデルの削除に応じて他のモデルの状態を変えるといった連動した挙動を実現する。 |