From: David Heinemeier Hansson Date: 2004-04-03T00:43:20+09:00 Subject: Re: CGI oddity > It looks it wouldn't be hard to hack that in, but maybe there's > another way? I've had the exact same problem. This is a little part of my solution: class CGI def query_parameters @qp = parse_query_parameters(query_string) if @qp.nil? @qp end def parse_query_parameters(query_string) parsed_params = {} query_string.split(/[&;]/).each { |p| k, v = p.split('=') parsed_params[CGI.unescape(k)] = v.nil? ? nil : CGI.unescape(v) } return parsed_params end end Now you should be able to access all the query_parameters from the hash returned on that method. Regardless of whether the request was POST or GET. I doesn't take much effort to include this seemingly with the original params method, so you don't have to distinguish between GET and POST variables. The full CGI extension I did, which also turns "person[address][street]" style inputs into hashes (like PHP), is included in Rails. The upcoming web-application framework that currently is just the mirage available at http://rails.nextangle.com/ but hopefully soon will be a released reality. -- David Heinemeier Hansson, http://www.basecamphq.com/ -- Web-based Project Management http://www.loudthinking.com/ -- Broadcasting Brain