state_machine
https://github.com/pluginaweek/state_machine
Ruby
Adds support for creating state machines for attributes on any Ruby class
StateMachine::Integrations::ActiveModel::ObserverUpdate#class
The class of the object being transitioned. Normally the object getting passed into observer methods is the actual instance of the ActiveModel class. ActiveModel uses that instance's class to check for enabled / disabled observers. Since state_machine is passing an ObserverUpdate instance into observer methods, +class+ needs to be overridden so that ActiveModel can still get access to the enabled / disabled observers.
Edit
git clone [email protected]:pluginaweek/state_machine.git
cd state_machine
open lib/state_machine/integrations/active_model/observer_update.rb
Contribute
# Make a new branchgit checkout -b -your-name--update-docs-StateMachine--Integrations--ActiveModel--ObserverUpdate-class-for-pr
# Commit to gitgit add lib/state_machine/integrations/active_model/observer_update.rbgit commit -m "better docs for StateMachine::Integrations::ActiveModel::ObserverUpdate#class"
# Open pull requestgem install hub # on a mac you can `brew install hub`
hub fork
git push <your name> -your-name--update-docs-StateMachine--Integrations--ActiveModel--ObserverUpdate-class-for-pr
hub pull-request
# Celebrate!