ruby-on-rails - 将 Json 数据解析为简单数组 Ruby on Rails 4

标签 ruby-on-rails arrays ruby json

我在像这样的ajax调用中得到了以下json数组

item    restaurants
places  [{"geometry":{"location":{"H":31.485241,"L":74.30220800000006}},"icon":"https://maps.gstatic.com/mapfiles
/place_api/icons/restaurant-71.png","id":"f8d9edcb5068bcd868e225429e881a351a5e2795","name":"Subway","opening_hours"
:{"open_now":true,"weekday_text":[]},"photos":[{"height":720,"html_attributions":["<a href=\"https:/
/maps.google.com/maps/contrib/116044146831530051317\">Adnan Fayyaz</a>"],"width":960}],"place_id":"ChIJpaImhvEDGTkRw35DXlvUTIE"
,"price_level":1,"rating":2.9,"reference":"CmRaAAAAr8mbHo-J1Wq8YTjzyiHRmwMkh40-26VJ6WqBxgjdAtT4v2HuT
Lb_OEYS7DUqHHIOe__ywd7S0E8oWgarwGD-DdlS1SVmrEo_Sl58o3PO528LAPGBSuN8luGTXLkKS0waEhCBQcGYE1ejtMRrY1F6zK5NGhTuIi9f4ht2CC0obNOpChdD1P_8yA"
,"scope":"GOOGLE","types":["restaurant","food","point_of_interest","establishment"],"vicinity":"A Block
, Lahore","html_attributions":[]}]

现在,当我在控制台中执行 p params["item"] 时,当我执行 p params["places"] 时,它会给我“餐厅”(正确)它给了我整个响应(这又是正确的)但是当我尝试通过键入 p params['places'][0] 来获取(比方说)第一个几何图形时,它只给了我两个括号喜欢

[
[

没有显示任何其他内容。而我的预期结果是数组中的第一个元素,即几何元素。 p params['places'][0].geometry 也给出 nil ,为什么?我错过了什么

最佳答案

p params['places'][0] 正在打印括号,因为 params['places'] 是一个字符串。然后您将打印字符串的第一个字符。

要获取 JSON 的内容,您首先需要解析它,例如 json gem。

require json
places = JSON.parse(params['places'])
p places[0]

关于ruby-on-rails - 将 Json 数据解析为简单数组 Ruby on Rails 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32988338/

相关文章:

ruby-on-rails - 嵌套属性中子模型的验证 - Rails

ruby-on-rails - 尝试设置 .SSH key 以通过 Cygwin 连接到 Github

mysql - 将 sql 查询转换为 Activerecord 查询 Rails 4

ruby-on-rails - 如何在 Rails 的功能测试中启用页面缓存?

javascript - 按委员会排序数组,然后按用户角色排序

ruby - 需要 ruby​​ 目录中所有文件的最佳方法?

ruby - 如何在 Windows 上为 ruby​​ 安装 PCAP

arrays - 给定 2 个排序的整数数组,在亚线性时间内找到第 n 个最大的数字

java - 如何在 Java 7 中使用一组众所周知的值初始化无符号字节数组?

ruby-on-rails - find_in_batches : how to end at a particular id?