将键值表导出为JSON

时间:2013-06-05 19:07:40

标签: ruby-on-rails json serialization

我目前在rails应用程序中有一个键/值表,当我要求JSON格式时,我试图以key => value数组格式导出所有行。

我能得到的最接近的是

{
    navigationBarColor: "#E31937"
},
{
    navigationBarImage: "Background-NavBar"
},

但我只想获得一个键/值对的数组,而不是每个对象的对象。我在寻找像

这样的东西
"navigationBarColor":"#E31937",
"navigationBarImage":"Background-NavBar",

我的表只有一个键和一个值列,都在varchar中。

非常感谢任何帮助。

更新:我的serializable_hash现在看起来像这样:

def serializable_hash()
    {key => value}
end

1 个答案:

答案 0 :(得分:1)

您正在寻找:reduce来自:merge

> rows = [{ navigationBarColor: "#E31937" }, { navigationBarImage: "Background-NavBar" }]
=> [{:navigationBarColor=>"#E31937"}, {:navigationBarImage=>"Background-NavBar"}]

> rows.reduce(&:merge!)
=> {:navigationBarColor=>"#E31937", :navigationBarImage=>"Background-NavBar"}

> puts rows.reduce(&:merge!).to_json
{"navigationBarColor":"#E31937","navigationBarImage":"Background-NavBar"}