Railsガイドにきちんと目を通して新しい知識を得る - コールバック編 -

ドキュメントを読み込むのは大事、ということでRailsガイドを頭から読んでいく取り組みをしています。 各章ごとに、(Railsガイドにちゃんと書いてあるのに)知らなかった機能を雑にまとめていきます。

今回は、コールバックの章です。

railsguides.jp

after_find

リンクはこちら

データベースからレコードを読み出すたびに使われるコールバック。
読み出したレコードを使う前にデータを整えたい場合に使えそうです。

Railsガイドにも「レコードを1つ読み込むたび」と書いてある通り、find以外でも呼び出されます。

class Product < ApplicationRecord
  after_find { puts 'オブジェクトが見つかりました。' }
end
Product.count
#=> 5
Product.all
#=> オブジェクトが見つかりました。                            
#=> オブジェクトが見つかりました。                            
#=> オブジェクトが見つかりました。
#=>オブジェクトが見つかりました。
#=> オブジェクトが見つかりました。

コールバックをスキップするメソッドたち

リンクはこちら

バリデーションをスキップするだけでなく、コールバックもスキップするんですね。   改めて使い方には注意が必要だなとわかりました。