Module: ActionController::ParamsWrapper::ClassMethods
| Relationships & Source Files | |
| Defined in: | actionpack/lib/action_controller/metal/params_wrapper.rb | 
Instance Method Summary
- #_set_wrapper_options(options)
- 
    
      #inherited(klass)  
    
    Sets the default wrapper key or model which will be used to determine wrapper key and attribute names. 
- 
    
      #wrap_parameters(name_or_model_or_options, options = {})  
    
    Sets the name of the wrapper key, or the model which ::ActionController::ParamsWrapperwould use to determine the attribute names from.
Instance Method Details
#_set_wrapper_options(options)
[ GitHub ]#inherited(klass)
Sets the default wrapper key or model which will be used to determine wrapper key and attribute names. Called automatically when the module is inherited.
# File 'actionpack/lib/action_controller/metal/params_wrapper.rb', line 244
def inherited(klass) if klass..format.any? params = klass..dup params.klass = klass klass. = params end super end
#wrap_parameters(name_or_model_or_options, options = {})
Sets the name of the wrapper key, or the model which ::ActionController::ParamsWrapper would use
to determine the attribute names from.
Examples
wrap_parameters format: :xml
  # enables the parameter wrapper for XML format
wrap_parameters :person
  # wraps parameters into params[:person] hash
wrap_parameters Person
  # wraps parameters by determining the wrapper key from Person class
  # (:person, in this case) and the list of attribute names
wrap_parameters include: [:username, :title]
  # wraps only :username and :title attributes from parameters.
wrap_parameters false
  # disables parameters wrapping for this controller altogether.Options
-   :format- The list of formats in which the parameters wrapper will be enabled.
-   :include- The list of attribute names which parameters wrapper will wrap into a nested hash.
-   :exclude- The list of attribute names which parameters wrapper will exclude from a nested hash.
# File 'actionpack/lib/action_controller/metal/params_wrapper.rb', line 221
def wrap_parameters(, = {}) model = nil case when Hash = when false = .merge(format: []) when Symbol, String = .merge(name: ) else model = end opts = Options.from_hash .to_h.slice(:format).merge() opts.model = model opts.klass = self self. = opts end