RoR从哈希获取密钥名称

时间:2014-10-13 15:41:45

标签: ruby-on-rails hash

我对RoR很新,也不喜欢使用哈希。我试图从哈希中获取名称密钥,以便我可以在页面上打印它们。我一直在为哈希获得一个未定义的方法。我不确定我做错了什么,并希望得到一些指导。

当我运行时:

- position_names = @contest.positions.map(&:name)
= position_names

我明白了:

undefined method 'name' for {"name"=>"P", num=>"3", "ep"=>["SP", "RP"]}:Hash

我应该在这里做什么以及从哈希中获取名称密钥的最佳方法是什么?

1 个答案:

答案 0 :(得分:0)

如果@ contest.positions返回哈希,那么您可以通过以下方式获取列表: -

@contest.positions.keys

编辑:

尝试这样做: -

 names = []
 names = @contest.positions.map {|array| array["name"]}

这将为您提供所有名称,您可以修改您想要使用的方式。