Guest User

Untitled

a guest
Jun 24th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.97 KB | None | 0 0
  1. class User
  2. attr_accessor :skip_activation
  3. #whatever
  4. end
  5.  
  6. def after_save(user)
  7. return if user.skip_activation
  8. #rest of stuff to send email
  9. end
  10.  
  11. Model.delete_observers
  12.  
  13. Rails.configuration.active_record.observers = []
  14.  
  15. config.active_record.observers = :my_model_observer unless File.basename($0) == 'rake'
  16.  
  17. def after_create
  18. send_email if RAILS_ENV == "production"
  19. end
  20.  
  21. MessageObserver.send(:remove_method, :after_create)
  22.  
  23. class ChangeSomething < ActiveRecord::Migration
  24.  
  25. # redefine...
  26. class MessageObserver < ActiveRecord::Observer
  27. def after_create(observed) ; end
  28. def after_update(observed) ; end
  29. end
  30.  
  31. def self.up
  32. # Message create/update stuff...
  33. end
  34. end
  35.  
  36. class ActivityObserver < ActiveRecord::Observer
  37. observe :user
  38.  
  39. # used in tests to disable the observer on demand.
  40. cattr_accessor(:disabled)
  41. end
  42.  
  43. def after_create(record)
  44. return if ActivityObserver.disabled
  45. # do_something
  46. end
  47.  
  48. ActivityObserver.disabled=true
Add Comment
Please, Sign In to add comment