This is my current implementation for Hash.to_params
If you have spare time, please help me optimize this.
Thanks.
class Hash
def to_params(parent = ‘’)
ret = ‘’
self.keys.each do |key|
if self[key].is_a? Hash
if parent == ‘’
ret += self[key].to_uri(key.to_s)
else
ret += self[key].to_uri(parent + “[#{key.to_s}]”)
end
else
if parent == ‘’
ret += “#{key}=#{self[key]}&”
else
ret += “#{parent}[#{key}]=#{self[key]}&”
end
end
end
return ret.chomp(’&’)
end
end