[英]How can I put an array of hashes, within a hash in Ruby?
哈希必须是键值对。 但是,您的第二个要素不是:
[{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
应该是这样的:
data = {
"key" => "value",
"array" => [{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
}
如您所见,我添加了一个新的键"array"
,其值是[{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
。 因为这符合哈希定义,所以不会有错误。 您可以为密钥命名,只要有密钥即可。
也许您的意思是“数组和哈希的组合”
data = [
{ "key" => "value"},
[{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
]
这里是两个元素的数组:一个哈希和一个哈希数组。 无论您是否要-从您的问题我都无法分辨。
在这里,您声明一个哈希并将其设置为data
变量。 因此,ruby需要以下语法:
key => value
但是您的第二个元素不是这种形式 ,它只是一个值(一个Array),没有关联的键! 我不了解Perl,但Ruby不允许。 你可以做:
data = {
"key" => "value",
"key2" => [{"name"=>"abc", "number"=>898, "email"=>"abc@xyz.com"}]
}
不确定为什么在数组中包含哈希? 有必要吗? 可能是因为数组没有键,请尝试这样做
data = {
"key":"value",
array:[hash:{"name":"abc", "number"=>898, "email"=>"abc@xyz.com"}]
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.