lib/mdwa/dsl/entity_actions.rb in mdd-3.0.3 vs lib/mdwa/dsl/entity_actions.rb in mdd-3.0.4

- old
+ new

@@ -10,18 +10,18 @@ self.entity = entity self.actions = {} end def member_action(name, method, request_type) - self.actions[name.to_sym] = Action.new(name.to_sym, :member, :method => method, :request_type => request_type) + self.actions[name.to_sym] = Action.new(self.entity, name.to_sym, :member, :method => method, :request_type => request_type) end # # Include a collection action # Params: name, method = get, request_type = html def collection_action(name, method, request_type) - self.actions[name.to_sym] = Action.new(name.to_sym, :collection, :method => method, :request_type => request_type) + self.actions[name.to_sym] = Action.new(self.entity, name.to_sym, :collection, :method => method, :request_type => request_type) end def member_actions actions.values.to_a.select{|a| a.member? and !a.resource?} end @@ -29,33 +29,33 @@ def collection_actions actions.values.to_a.select{|a| a.collection? and !a.resource?} end def generate_routes - routes = [] - self.actions.values do |action| - routes << "#{action.method.to_s} '#{entity.name.underscore.pluralize}/#{action.name.to_s}' => #{action.name.to_sym}" + routes = {} + self.actions.values.select {|a| !a.resource?}.each do |action| + routes[action.name] = action.generate_route end return routes end def generate_controller - controller = [] - self.actions.value.select {|a| !a.resource?}.each do |action| - controller << action.generate_controller + controller = {} + self.actions.values.select {|a| !a.resource?}.each do |action| + controller[action.name] = action.generate_controller end - # controller.join("\n\n") + return controller end # Returns all resource actions def set_resource_actions - self.actions[:index] = Action.new(:index, :collection, :resource => true) - self.actions[:new] = Action.new(:new, :collection, :resource => true) - self.actions[:edit] = Action.new(:edit, :member, :resource => true) - self.actions[:show] = Action.new(:show, :member, :resource => true) - self.actions[:create] = Action.new(:create, :collection, :method => :post, :resource => true) - self.actions[:update] = Action.new(:update, :member, :method => :put, :resource => true) - self.actions[:delete] = Action.new(:delete, :member, :method => :delete, :resource => true) + self.actions[:index] = Action.new(self.entity, :index, :collection, :resource => true) + self.actions[:new] = Action.new(self.entity, :new, :collection, :resource => true) + self.actions[:edit] = Action.new(self.entity, :edit, :member, :resource => true) + self.actions[:show] = Action.new(self.entity, :show, :member, :resource => true) + self.actions[:create] = Action.new(self.entity, :create, :collection, :method => :post, :resource => true) + self.actions[:update] = Action.new(self.entity, :update, :member, :method => :put, :resource => true) + self.actions[:delete] = Action.new(self.entity, :delete, :member, :method => :delete, :resource => true) end def clear_resource_actions self.actions.delete :index self.actions.delete :new