[英]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.