Module: Pagy::QueryUtils
- Defined in:
- lib/pagy/extras/standalone.rb
Overview
extracted from Rack::Utils and reformatted for rubocop
Class Method Summary collapse
Class Method Details
.build_nested_query(value, prefix = nil) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/pagy/extras/standalone.rb', line 13 def build_nested_query(value, prefix = nil) case value when Array value.map { |v| build_nested_query(v, "#{prefix}[]") }.join('&') when Hash value.map { |k, v| build_nested_query(v, prefix ? "#{prefix}[#{escape(k)}]" : escape(k)) }.delete_if(&:empty?).join('&') when nil prefix else raise ArgumentError, 'value must be a Hash' if prefix.nil? "#{prefix}=#{escape(value)}" end end |
.escape(str) ⇒ Object
10 11 12 |
# File 'lib/pagy/extras/standalone.rb', line 10 def escape(str) URI.encode_www_form_component(str) end |