我有一个数组(Ruby on Rails),如:
[{"name"=>"Start Time", "id"=>3, "value"=>"15:00"},
{"name"=>"End Time", "id"=>4, "value"=>"16:00"}]
如何将此数组分配给键,使其如下所示:
{"custom_fields": [{"name"=>"Start Time", "id"=>3, "value"=>"15:00"},
{"name"=>"End Time", "id"=>4, "value"=>"16:00"}]}
答案 0 :(得分:1)
ruby Hash litteral的正确语法是:
hash = { "string key" => value }
hash = { :symbol_key => value }
此语法仅适用于ruby> 1.9以及仅以symbols为键的哈希值:
hash = { symbol_key: value }
ps:你应该深入研究一本好的红宝石书来学习基础知识。 rubyist中公认的参考是"pickaxe"书
答案 1 :(得分:1)
你非常接近。与其他用户一样,如果您的哈希键是字符串,则需要使用旧语法=>
。
{"custom_fields" => [{"name"=>"Start Time", "id"=>3, "value"=>"15:00"},
{"name"=>"End Time", "id"=>4, "value"=>"16:00"}]}
答案 2 :(得分:0)
不知道轨道上的红宝石,但我从你所写的内容中猜测是:
[{"custom_fields"=>{{"name"=>"Start Time", "id"=>3, "value"=>"15:00"}, {"name"=>"End Time", "id"=>4, "value"=>"16:00"}}}]
答案 3 :(得分:0)
只需创建一个新哈希并将您的数组分配给键custom_fields
:
myHash = Hash.new
myHash['custom_fields'] = myArray
另外,我建议你阅读哈希和数组;它们在Ruby中不是一回事
例如,如果您来自PHP背景,则可以假装散列是关联数组,而数组是......没有键的数组(例如[:a, :b, :c]
)。