From: Paul Battley Date: 2006-03-15T18:06:44+09:00 Subject: Re: Building querystrings with ruby On 15/03/06, ara.t.howard@noaa.gov wrote: > require "cgi" > class Hash > def query_string > "?" << inject([]){|a,kv| a << [CGI.escape(kv.shift), CGI.escape(kv.shift)].join("=") }.join("&") > end > end Now here's somewhere I can use the handy trick I learned yesterday: "?" << inject([]){ |a,(k,v)| a << [CGI.escape(k), CGI.escape(v)].join("=") }.join("&") But this is shorter: "?" << inject([]){ |a,kv| a << kv.map{ |e| CGI.escape(e) }.join("=") }.join("&") And this is shorter still: "?" << to_hash.map{ |kv| kv.map{ |e| CGI.escape(e) }.join("=") }.join("&") Paul.