希望這不是一個騙局,但我無法找到具體的答案。我要散列的數組:散列合併數組的輸出
a1 = [{"aws_ebs_stripe"=>"/dev/xvdi"}, {"aws_ebs_stripe"=>"/dev/xvdj"}, {"aws_ebs_stripe"=>"/dev/xvdk"}, {"aws_ebs_stripe"=>"/dev/xvdl"}]
a2 = [{"volume_id"=>"vol-001011"}, {"volume_id"=>"vol-010110"}, {"volume_id"=>"vol-101101"}, {"volume_id"=>"vol-011001"}]
我有一些代碼,我發現前面
Hash[a1.zip(a2.map { |i| i.include?(',') ? (i.split /, /) : i })]
的想法是與pretty_generate
這個輸出作爲JSON結合這些事,但並不完全正確在輸出第一哈希:
{
"{\"aws_ebs_stripe\"=>\"/dev/xvdi\"}": {
"volume_id": "vol-001011"
} .... snip
理想情況下,JSON應該是這樣的
"aws_ebs_stripe: /dev/xvdi": {
"volume_id": "vol-001011"
}
我不確定清理此問題的最佳方法。
爲什麼不只需要json然後在哈希上調用to_json呢? – engineersmnky
你想要構造的散列是':aws'的值。正確?在'a2.map {| i | ...'中,'i'是一個散列,所以'i.include?(',')'如果'i'有一個鍵''''則爲真。那是你的意圖嗎? –
作爲一個更大的散列的一部分發射 – chris