[英]Iterate through to create a hash of hashes
作為最終結果,我需要一個哈希:
{items: {lorem: val1, dolor: val2}, {lorem: val1, dolor: val2}...}
例如哈希哈希。
把問題放在它應該從迭代創建如下:
@result = []
@goods = {lorem: "ipsum", dolor: "sit"}
@items.each do |item|
@goods.map do |k, v|
if item.title == "ipsum"
@result << [k, v]
else
@result << [k, item.title]
end
end
end
但這不是我正在尋找的,因為@result是數組,並且它不是二維的(因此我有[[foo,bar] [foo1,bar1] ...])
我看到如何將k
轉換為Hash鍵(k.to_sym),但我的問題是將散列哈希值作為最終輸出。
Ruby 1.9.3(和Rails,但我相信這可以在沒有任何Rails添加的情況下完成)
非常感謝。
預期結果的格式不是有效的哈希。
代替
{items: {lorem: val1, dolor: val2}, {lorem: val1, dolor: val2}...}
它應該是這樣的
{items: [{lorem: val1, dolor: val2}, {lorem: val1, dolor: val2}]}
得到你想要的結果也不難
@items = []
@goods = {lorem: "ipsum", dolor: "sit"}
@items << @goods
@result = {items: @items}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.