我在Ruby中有以下哈希值(@myhash
):
[
{
"id" => "123456789",
"name" =>"Random name",
"list_type" =>"random type of list"
}
]
如何从哈希中取出id的值? (基本上我的结果应该是:123456789)
@myhash[:id]
时,我收到以下错误“无法将符号转换为整数”@myhash['id']
时,我收到以下错误“无法将字符串转换为整数”我尝试添加.to_i
,.to_s
等等,但没有任何帮助。
答案 0 :(得分:9)
你所拥有的不是哈希。它是一个哈希数组(确切地说,是一个哈希的数组)。
首先,您必须处理数组中的正确元素(第一个),然后按键解析其值。
@myhash[0]['id'] # => '123456789'
# or
@myhash.first['id'] # => '123456789'
我收到以下错误“无法将符号转换为整数”
你认为你正在使用哈希,但实际上,它就是数组。数组不接受字符串或符号键。他们想要索引的整数。因此错误。
答案 1 :(得分:2)