2011-08-28 34 views
0

我正在使用HTTParty訪問Google場所API。這是我的代碼。如何在Rails中訪問api返回字符串中的項目

query = GOOGLE_API["search"].merge(:location => latlng.join(",")) 
     response = HTTParty.get(GOOGLE_API["search"]["url"], :query => query) 
     @businessInfo = response 

@business信息包含來自谷歌的一串數據不如預期,但是,當我嘗試使用acccess @ businessInfo.index項目(0).item就像我會從我的數據庫中的數據,我得到零。

This is a sample of what is contained in the variable -- {"html_attributions"=>[], "results"=>[{"geometry"=>{"location"=>{"lat"=>33.762835, "lng"=>-84.392724}}, "icon"=>"http://maps.gstatic.com/mapfiles/place_api/icons/art_gallery-71.png", "id"=>"c551a5fdc78c273e6f498aa920733037199ebe01", "name"=>"World of Coca-Cola", "reference"=>"CnRoAAAAvpKSnn971Ur5ABYStk-EJfMvyFFFlBtd9LzwRT4H-PF50vS0CQtDCGkoW0QqKLHwFHV7Qmj32bgg-KjthkVENsBpGPxNAq_vcg4do-TQyi97y6mKxf3qUgoGxzGHePEAcqg15aATTl6Xdsq7Pl2b6hIQpzVIr4KO4ZDSx4tIqcH-ARoUPn-9yBSLi35lBM7gFm2KTPGREa0", "types"=>["art_gallery", "store", "establishment"], "vicinity"=>"Baker Street Northwest, Atlanta"}, {"geometry"=>{"location"=>{"lat"=>33.759925, "lng"=>-84.387158}}, "icon"=>"http://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png", "id"=>"32815dbf0963cb55dee871b96cc5100335f40400", "name"=>"Hard Rock Cafe Atlanta", "reference"=>"CnRtAAAApKIX3M3emqAzdsN3f0ntsi-M- 

我的問題是,我用什麼語法來訪問項目和值,以便我可以使用它們。

謝謝。

+0

確定..想通了。迭代器位於父項和子項哈希之間。起初並不清楚。 '<%對於i在0..5%> \t \t

    \t \t
  • <%= @features [' 結果 '] [I] [' 姓名']%>
  • \t \t \t \t
\t \t <% end %>' –

回答

0

您的響應對象是hash,因此您可以通過以下方式訪問你的迴應內容:

puts response["results"] 
+0

謝謝!我剩下的問題是這些值是嵌套的。所以沒有從「結果」返回的價值。我需要類似Results.name或[「results」] [「name],但不幸的是,這些方法似乎都沒有工作。有沒有辦法訪問」結果「下的嵌套值? –

+0

好吧。 –

相關問題