我有这样的哈希。
h = {"name"=>"United States House of Representatives TX-21",
"divisionId"=>"ocd-division/country:us/state:tx/cd:21",
"levels"=>["country"],
"roles"=>["legislatorLowerBody"],
"officials"=>[{"name"=>"Lamar Smith",
"address"=>[
{"line1"=>"2409 rayburn house office building",
"city"=>"washington",
"state"=>"DC",
"zip"=>"20515"
}
],
"party"=>"Republican",
"phones"=>["(202) 225-4236"],
"urls"=>["http://lamarsmith.house.gov/"],
"photoUrl"=>"http://...",
"channels"=>[
{"type"=>"Facebook", "id"=>"LamarSmithTX21"},
{"type"=>"Twitter", "id"=>"LamarSmithTX21"},
{"type"=>"YouTube", "id"=>"lamarsmithtexas21"}
]
}
]
}
我正在尝试执行if
语句,如果@nationalOffices
哈希== levels
,则会将此数组推送到另一个名为country
的数组中。问题是级别哈希值是一个数组。我不知道该怎么做。任何建议将不胜感激。
答案 0 :(得分:0)
您可以通过深入了解哈希来访问它,例如array[0]["levels"]
。您可能必须将此API响应保存在变量中,然后按照自己的方式进行操作
如果您想了解有关哈希和数组的更多信息,这是一个非常好的教程:http://www.tutorialspoint.com/ruby/ruby_hashes.htm
答案 1 :(得分:0)
@nationalOffices<< my_array if levels == country? :#else声明在这里