我的一个模板中有以下数据结构:
[
{
geometry: {
type: geometry, coordinates: coordinates
},
}
]
然后我有一个看起来像这样的选项哈希:
options = { label: "Hot Chicken Takeover",
tooltip: "5 stars",
color: "#0090ff" }
如何将选项中的键值对添加到上面的数组中,使其看起来像这样:
[
{
geometry: {
type: geometry, coordinates: coordinates
},
label: "Hot Chicken Takeover",
tooltip: "5 stars",
color: "#0090ff"
}
]
有什么方法可以在 ruby 中“压平”哈希值吗?
在下面给出的示例中,我们首先使用
data[0]
访问数据数组的第一个元素。然后,我们使用 options
方法将 geometry
哈希合并到 merge
哈希中。生成的哈希值被分配回数据[0]。
data = [{ geometry: { type: 'geometry', coordinates: [1, 2] }}]
options = { label: "Hot Chicken Takeover",
tooltip: "5 stars",
color: "#0090ff" }
data[0] = data[0].merge(options)
puts data.inspect
输出
[{:geometry=>{:type=>"geometry", :coordinates=>[1, 2]}, :label=>"Hot Chicken Takeover", :tooltip=>"5 stars", :color=>"#0090ff"}]