Rails の興味深い実装メモの続き。 ActiveRecord の主な仕事は、DB の読み書きとデータの Validation なわけですが、コールバックを利用すると、Validation の前後や DB 読み書きの前後の、任意のタイミングで好きな処理を割り込ませることができます。 例えば、 Rails本のサンプルでは、 def before_create self.hashed_password = User.hash_password(self.password) end といった感じで、DBにユーザ情報をインサートする前にパスワードを SHA1 でハッシュしたり、 after_create do |order| logger.info "Order #{order.id} created" end といった感じで、オーダー情報をDBに格納した後ログに記録する、といったことをモデルの