我目前在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"}