by wikipedia
コールバック関数とは、プログラム中で、呼び出し先の関数の実行中に実行されるように、あらかじめ指定しておく関数。
関数が実行中に、実行される関数 = コールバック関数
呼び出し先の関数の引数としてコールバック関数への参照情報を渡すことで、呼び出し先から任意のコールバック関数を実行させ、コールバック関数に実行制御を移すことができる。電話を相手に一度かけて電話番号のみを伝え、いったん電話を切って折り返し相手からかけなおしてもらう様子(これを「コールバック」という)に似ているためこの名前がついた。
呼び出し先の関数に引数にどのコールバック関数を使えばいいのか渡しておく。
by RailsGuide
コールバックとは、オブジェクトのライフサイクル期間における特定の瞬間に呼び出されるメソッドのことです。コールバックを利用することで、Active Recordオブジェクトが作成/保存/更新/削除/検証/データベースからの読み込み、などのイベント発生時に常に実行されるコードを書くことができます。
つまり、コールバック関数とは
def hoge(method)
self.send(method.to_sym)
end
def call_method
p 'コールバックされました。'
end
hoge("call_method")
→ "コールバックされました。"
Railsの身近なコールバック関数
by RailsGuide
オブジェクトの作成
before_validation
after_validation
before_save
around_save
before_create
around_create
after_create
after_save
オブジェクトの更新
before_validation
after_validation
before_save
around_save
before_update
around_update
after_update
after_save
オブジェクトのdestroy
before_destroy
around_destroy
after_destroy