我正在使用此json内容(我愿意在此处提供有关更好格式的建议):
{"forwardingZones": [{"name": "corp.mycompany.com","dnsServers": ["192.168.0.1","192.168.0.2"]}]}
注意:随着我们的扩展,我们可能会在此列表中添加更多项,包括更多IP和更多名称,因此在下面代码的末尾添加了“ join(',')”。
我正在尝试遍历它以获得以下结果:
corp.mycompany.com=192.168.0.1;192.168.0.2
使用此代码:
forward_zones = node['DNS']['forward_zones'].each do |forwarded_zone|
forwarded_zone_name = forwarded_zone['name']
forwarded_zone_dns_servers = forwarded_zone['dns_servers'].join(';')
"#{forwarded_zone_name}=#{forwarded_zone_dns_servers}"
end.join(',')
这是我得到的结果:
{"dnsServers"=>["192.168.0.1", "192.168.0.2"], "name"=>"corp.mycompany.com"}
我在做什么错...?
答案 0 :(得分:0)
x.each
返回x
。您需要x.map
。