是否有任何干净的方法将多级哈希转换为字符串

时间:2012-03-28 06:33:26

标签: ruby-on-rails ruby hash

对于level1的多级哈希,我编写了这段代码,

{"1"=>{2=>0}}.map{|k,v| v.class!=Hash ? "#{k}=#{v}" : "#{k}=#{v.keys[0]}@#{v.values[0]}"}.join('&')

但是这不能用于多个级别的哈希。是否有任何方法可以编写通用代码或任何可用于将n级的多级哈希转换为字符串格式的方法。

1 个答案:

答案 0 :(得分:3)

内置inspect已经做到了(大多数对象都有该方法)

{"1"=>{2=>0}}.inspect
# => "{\"1\"=>{2=>0}}"