我跑:
params[:taxes].each { |pst|
puts(pst)
}
得到了:
{"country"=>"USA", "tax"=>"20"}
我怎样才能获得该国家的参数?
我试过了:
pst[:country]
pst["country"]
但它不会打印任何内容。
任何帮助表示赞赏!
答案 0 :(得分:5)
由于您只使用一个元素(此处为pst
)来迭代哈希,因此它会在每个步骤中返回一个长度为2的数组。您只能在第一次迭代中通过调用"USA"
收到pst[1][:country]
。也许您可以更方便地在块中定义两个元素进行迭代,从而使您能够在每个步骤中访问键和值:
params[:taxes].each do |key, value|
puts value[:country]
end
答案 1 :(得分:1)
尝试使用单引号
pst['country']
答案 2 :(得分:1)
尝试:
params[:taxes].each_pair do |key, value|
puts value[:country]
end
获取国家/地区名称