module Pagy::QueryUtils
extracted from Rack::Utils and reformatted for rubocop
Public Instance Methods
build_nested_query(value, prefix = nil)
click to toggle source
# 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)
click to toggle source
# File lib/pagy/extras/standalone.rb, line 10 def escape(str) URI.encode_www_form_component(str) end