我有来自JSON对象的哈希。它看起来像这样:
JSON = {“kind”=>“calendar#freeBusy”,“timeMin”=>“2012-02-19T19:35:00.000Z”,“timeMax”=>“2012-02-19T19: 40:00.000Z“,”calendars“=> {”av3ddlgc54qe4brii4r7pius6k@group.calendar.google.com“=> {”busy“=> [{”start“=>”2012-02-19T19:35 :00Z“,”end“=>”2012-02-19T19:40:00Z“}]}}}
我想检查是否有任何忙碌的孩子(日历的孩子)。
我可以通过 JSON [“日历”]访问日历的孩子
返回:
{“av3ddlgc54qe4brii4r7pius6k@group.calendar.google.com”=> {“busy”=> [{“start”=>“2012-02-19T19:35:00Z”,“end”=> ; “2012-02-19T19:40:00Z”}]}}
但是 JSON [“日历”] [“忙碌”] (这是我认为您打算访问子元素的方式?)返回nil。
如何进入“忙碌”的孩子?
我使用JSON.parse创建了一个法拉第请求的哈希。
答案 0 :(得分:6)
“busy”嵌套在“av3ddlgc54qe4brii4r7pius6k@group.calendar.google.com”下,因此您还需要包含此内容:JSON [“calendars”] [“av3ddlgc54qe4brii4r7pius6k@group.calendar.google.com “] [”忙碌“]。如果要访问所有日历的此属性,则必须循环:
JSON["calendars"].each do |key, value|
# working with value["busy"]...
end