Method: E#action_params

Defined in:
lib/e-core/instance/base.rb

#action_paramsObject

Examples:

def index id, status
  action_params
end
# GET /100/active
# => {:id => '100', :status => 'active'}


140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
# File 'lib/e-core/instance/base.rb', line 140

def action_params
  return @__e__action_params if @__e__action_params

  action_params, given_params = {}, Array.new(action_params__array) # faster than dup
  action_setup[:action_arguments].each_with_index do |type_name, index|
    type, name = type_name
    if type == :rest
      action_params[name] = []
      until given_params.size < (action_setup[:action_arguments].size - index)
        action_params[name] << given_params.shift
      end
    else
      action_params[name] = given_params.shift
    end
  end
  @__e__action_params = EUtils.indifferent_params(action_params).freeze
end