модуль ActionController::ParamsWrapper::ClassMethods
Публичные методы экземпляра
# File actionpack/lib/action_controller/metal/params_wrapper.rb, line 176 def _set_wrapper_options(options) self._wrapper_options = Options.from_hash(options) end
# File actionpack/lib/action_controller/metal/params_wrapper.rb, line 231
def inherited(klass)
if klass._wrapper_options.format.any?
params = klass._wrapper_options.dup
params.klass = klass
klass._wrapper_options = params
end
super
end Устанавливает значение по умолчанию для ключа обёртки или модели, которые будут использованы для определения ключа обёртки и имён атрибутов. Вызывается автоматически при наследовании модуля.
Вызывает метод родительского класса
# File actionpack/lib/action_controller/metal/params_wrapper.rb, line 207
def wrap_parameters(name_or_model_or_options, options = {})
model = nil
case name_or_model_or_options
when Hash
options = name_or_model_or_options
when false
options = options.merge(format: [])
when Symbol, String
options = options.merge(name: name_or_model_or_options)
else
model = name_or_model_or_options
end
opts = Options.from_hash _wrapper_options.to_h.slice(:format).merge(options)
opts.model = model
opts.klass = self
self._wrapper_options = opts
end Устанавливает имя ключа обёртки или модель, которая ParamsWrapper будет использована для определения имён атрибутов.
Примеры
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.
Параметры
-
:format- Список форматов, в которых будет включён обработчик параметров. -
:include- Список имён атрибутов, которые обработчик параметров будет обертывать в вложенный хэш. -
:exclude- Список имён атрибутов, которые обработчик параметров будет исключать из вложенного хэша.
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.