class ActionDispatch::ParamBuilder
Атрибуты
Открытые методы класса
# File actionpack/lib/action_dispatch/http/param_builder.rb, line 25
def ignore_leading_brackets
ActionDispatch.deprecator.warn <<~MSG
ActionDispatch::ParamBuilder.ignore_leading_brackets is deprecated and have no effect and will be removed in Rails 8.2.
MSG
@ignore_leading_brackets
end # File actionpack/lib/action_dispatch/http/param_builder.rb, line 33
def ignore_leading_brackets=(value)
ActionDispatch.deprecator.warn <<~MSG
ActionDispatch::ParamBuilder.ignore_leading_brackets is deprecated and have no effect and will be removed in Rails 8.2.
MSG
@ignore_leading_brackets = value
end # File actionpack/lib/action_dispatch/http/param_builder.rb, line 9 def self.make_default(param_depth_limit) new param_depth_limit end
– Эта реализация основана на Rack::QueryParser, Copyright © 2007-2021 Leah Neukirchen <leahneukirchen.org/infopage.html>
# File actionpack/lib/action_dispatch/http/param_builder.rb, line 15 def initialize(param_depth_limit) @param_depth_limit = param_depth_limit end
Открытые методы экземпляра
# File actionpack/lib/action_dispatch/http/param_builder.rb, line 62 def from_hash(hash, encoding_template: nil) # Force encodings from encoding template hash = Request::Utils::CustomParamEncoder.encode_for_template(hash, encoding_template) # Assert valid encoding Request::Utils.check_param_encoding(hash) # Convert hashes to HWIA (or UploadedFile), and deep-munge nils # out of arrays hash = Request::Utils.normalize_encode_params(hash) hash end
# File actionpack/lib/action_dispatch/http/param_builder.rb, line 46
def from_pairs(pairs, encoding_template: nil)
params = make_params
pairs.each do |k, v|
if Hash === v
v = ActionDispatch::Http::UploadedFile.new(v)
end
store_nested_param(params, k, v, 0, encoding_template)
end
params
rescue ArgumentError => e
raise InvalidParameterError, e.message, e.backtrace
end # File actionpack/lib/action_dispatch/http/param_builder.rb, line 42 def from_query_string(qs, separator: nil, encoding_template: nil) from_pairs QueryParser.each_pair(qs, separator), encoding_template: encoding_template end
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.