Posted at

コールバックの種類

コールバック:登録や削除イベントの前後に挟む任意の処理のこと

コールバックの種類
代表的な用途

before_validation
検証前の値の正規化

after_validation
検証結果(エラーメッセージの正規化)

before_save

before_create

before_update
saveのために裏側で行いたいデータ準備を行う。

検証エラーを出してもユーザー側からどうしようもない状態異常を防ぐために例外を出す。

after_save

after_create

after_update
モデルの状態に応じて他のモデルの状態を変えるなどの、モデルの状態に連動した挙動を行わせる。

検証エラーを出してもユーザー側からどうしようもない状態異常を防ぐために例外を出す。

before_destroy
削除してOKかをチェックし、ダメなら例外を出すなどして防ぐ。

after_destroy
そのモデルの削除に応じて他のモデルの状態を変えるといった連動した挙動を実現する。