i = { :Narration=>"RI journal",
:Status=>"DRAFT",
:JournalLines=>{
:JournalLine=>[
{ :credit=>{
:LineAmount=>"10",
:AccountCode=>"111",
:Description=>"check cred"
},
:debit=>{
:LineAmount=>"-10",
:AccountCode=>"222"
}
},
{ :credit=>{
:LineAmount=>"10",
:AccountCode=>"333"
},
:debit=>{
:LineAmount=>"-10",
:AccountCode=>"444"
}
}
]
}
}
でハッシュの変換、私は単純に、配列内の値を求めています。
予想される出力:これは動作します私のコードは、
{ :Narration=>"RI journal",
:Status=>"DRAFT",
:JournalLines=>
{ :JournalLine=>[
{:LineAmount=>"10", :AccountCode=>"111", :Description=>"check cred"},
{:LineAmount=>"-10", :AccountCode=>"222"},
{:LineAmount=>"10", :AccountCode=>"333"},
{:LineAmount=>"-10", :AccountCode=>"444"}
]
}
}
です。
arr = []
i[:JournalLines][:JournalLine].each do |h|
h.each do |k, v|
arr << v
end
end
各ループを2つ置き換えて入力を変換する方法はありますか。