よくある問題
モデルのコードが多い場合やconcernをいっぱい使っていると、callbackの処理を追っかけるのも一苦労。
だからと言って、after_ や before_ のようなキーワードで検索したりすのもの面倒。
そんなお困りのあなたに!
解決策
rails consoleで確認できます。
例えば、Entryモデルの after_save に登録されている callback 一覧を確認したい場合
$ bundle exec rails console
>> Entry._save_callbacks.select { |cb| cb.kind.eql? :after }.map { |cb| puts cb.filter }
update_search_text
update_activity
update_search_text と update_activity というメソッドが after_save のときに呼び出されていることがわかります。
同じような感じで before_save のものを確認したい場合は、モデル名の後とselectの中のフレーズを少し変更すればOK
Entry._save_callbacks.select { |cb| cb.kind.eql? :before }.map { |cb| puts cb.filter }
さらに after_update を確認したいなら
Entry._update_callbacks.select { |cb| cb.kind.eql? :after }.map { |cb| puts cb.filter }
こんな感じで簡単に調べることができます。
詳細はこちらでチェック!
Active Record Callbacks