Module: ActionMan::Model::ClassMethods
- Defined in:
- lib/action_man/model.rb
Instance Method Summary collapse
Instance Method Details
#action(action_name, class_name = nil) ⇒ Object
8 9 10 11 12 13 14 15 16 |
# File 'lib/action_man/model.rb', line 8 def action(action_name, class_name=nil) define_method(action_name) do |params| (class_name || self.class.action_class(action_name)).constantize.new(self).run(params) end define_method("#{action_name}?") do (class_name || self.class.action_class(action_name)).constantize.new(self).executable? end end |
#action_class(action_name) ⇒ Object
18 19 20 |
# File 'lib/action_man/model.rb', line 18 def action_class(action_name) "#{name.pluralize}::#{action_name.to_s.camelcase}Action" end |