module Beholders::CallbackHooks
Constants
- BEHOLDER_CB_RAILS_3
- BEHOLDER_CB_RAILS_5
Public Instance Methods
observed_by(observer)
click to toggle source
Pass class name as string not class, for same reason rails 5.1 deprecates the latter: github.com/rails/rails/blob/5-1-stable/activerecord/CHANGELOG.md
# File lib/beholders/callback_hooks.rb, line 21 def observed_by(observer) instance_eval do available_callbacks(self).each do |cb| send cb, -> { observer.constantize.trigger(cb, self) } end end end
Private Instance Methods
available_callbacks(klass)
click to toggle source
# File lib/beholders/callback_hooks.rb, line 31 def available_callbacks(klass) if klass.respond_to?(:after_create_commit) BEHOLDER_CB_RAILS_5 else BEHOLDER_CB_RAILS_3 end end