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

我能得到的最接近的是

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


但是我只想获取键/值对的数组,而不是每个对象的对象。我正在寻找类似的东西

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


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

任何帮助将不胜感激。

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

def serializable_hash()
    {key => value}
end

最佳答案

您正在通过: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"}

10-06 08:40