Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 获取哈希表的元素_Ruby On Rails_Hash - Fatal编程技术网

Ruby on rails 获取哈希表的元素

Ruby on rails 获取哈希表的元素,ruby-on-rails,hash,Ruby On Rails,Hash,我运行: 得到: params[:taxes].each { |pst| puts(pst) } 如何获取国家的参数 我试过: {"country"=>"USA", "tax"=>"20"} 但它没有打印任何东西 感谢您的帮助 尝试使用单引号 pst[:country] pst["country"] 尝试使用单引号 pst[:country] pst["country"] 由于您只定义一个元素(此处为pst)来迭代哈希,因此它在每一步中返回一个长度为2的数组。只有在第一

我运行:

得到:

params[:taxes].each { |pst|
   puts(pst)
}
如何获取国家的参数

我试过:

{"country"=>"USA", "tax"=>"20"}
但它没有打印任何东西


感谢您的帮助

尝试使用单引号

pst[:country]
pst["country"]

尝试使用单引号

pst[:country]
pst["country"]

由于您只定义一个元素(此处为
pst
)来迭代哈希,因此它在每一步中返回一个长度为2的数组。只有在第一次迭代中,通过调用
pst[1][:country]
,您才会收到
“USA”
。在块中定义两个元素,使您能够在每个步骤中访问键和值,这可能更方便您进行迭代:

pst['country']

由于您只定义一个元素(此处为
pst
)来迭代哈希,因此它在每一步中返回一个长度为2的数组。只有在第一次迭代中,通过调用
pst[1][:country]
,您才会收到
“USA”
。在块中定义两个元素,使您能够在每个步骤中访问键和值,这可能更方便您进行迭代:

pst['country']
尝试:

要获取国家/地区名称,请尝试:


为了得到国家名称

谢谢,我按照你的建议做了,并打印了:puts(value[:country])谢谢,我按照你的建议做了,并打印了:puts(value[:country])