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