फूला हुआ ActiveSupport लोड करने या अपना स्वयं का रोल करने की आवश्यकता नहीं है, आप उपयोग कर सकते हैं Rack::Utils.build_query
और Rack::Utils.build_nested_query
। यहाँ एक ब्लॉग पोस्ट है जो एक अच्छा उदाहरण देता है:
require 'rack'
Rack::Utils.build_query(
authorization_token: "foo",
access_level: "moderator",
previous: "index"
)
# => "authorization_token=foo&access_level=moderator&previous=index"
यह भी सरणियों को संभालता है:
Rack::Utils.build_query( {:a => "a", :b => ["c", "d", "e"]} )
# => "a=a&b=c&b=d&b=e"
Rack::Utils.parse_query _
# => {"a"=>"a", "b"=>["c", "d", "e"]}
या अधिक कठिन नेस्टेड सामान:
Rack::Utils.build_nested_query( {:a => "a", :b => [{:c => "c", :d => "d"}, {:e => "e", :f => "f"}] } )
# => "a=a&b[][c]=c&b[][d]=d&b[][e]=e&b[][f]=f"
Rack::Utils.parse_nested_query _
# => {"a"=>"a", "b"=>[{"c"=>"c", "d"=>"d", "e"=>"e", "f"=>"f"}]}