Subscribed unsubscribe Subscribe Subscribe

Callbacks一覧を見る

u = User.first
# Save callbacksの一覧
u.send('_save_callbacks')
# Update callbacksの一覧
u.send('_update_callbacks')
# Create callbacksの一覧
u.send('_create_callbacks')
# Destroy callbacksの一覧
u.send('_destroy_callbacks')

class User
  # include ActiveSupport::Callbacks は実行済みを想定
  def self.callback_list(name)
    get_callbacks(name)
  end
end
User.callback_list('save')
User.callback_list('update')
User.callback_list('create')
User.callback_list('destroy')

のような感じでcallback一覧が見れます。 before_after_などは基本使わないほうが良い(個人の見解)ですが、ライブラリなどで利用されていることも多いので、一覧を確認する際に重宝します。