HTTParty 在 Rails 中解析 JSON
HTTParty parsing JSON in Rails
我有一个 URL 显示 JSON 400 个 YMCA 位置的信息。我的目标是能够提取每个位置的纬度和经度,以便在地图上显示这些点。
我正在玩弄 HTTParty,只想从在视图中仅显示纬度和经度开始。
这是我的控制器:
require 'rubygems'
require 'httparty'
class HomesController < ApplicationController
include HTTParty
def index
uri = HTTParty.get"http://www.livestrong.org/we-can-help/ymca.json"
@place = JSON.parse(uri.body)
end
end
视图如下:
<% @place.each do | key, value | %> <br>
<strong><%= key %></strong>
<%= value %>
<% end %>
到目前为止,这会在屏幕上显示所有 JSON。如何挑选各个部分?
你必须从显示的内容中获取提示,如果你看一看,我相信你会看到你的循环只执行了一次,并且唯一的关键输出是 ymca
所有数据都在那个键的 value
中。
如果您进入 irb
并查看 @place['ymca']
中的内容,您会发现它是一个大数组。如果您查看该数组的第一个元素,您会发现它是非常易于管理的数据块:
[12] pry(main)> @place['ymca'].first
=> {"phone_number"=>"205-870-0144",
"title"=>"Mountain Brook YMCA",
"street_address"=>"2401 20th Place South",
"email"=>"livestrong@ymcabham.org",
"city"=>"Birmingham",
"lat"=>33.487881,
"zipcode"=>"35223",
"description"=>"Mountain Brook YMCA",
"state"=>"Alabama",
"thumbnail"=>"v1414706252/tak5bi22hve474jeh1yr.png",
"website"=>"http://ymcabham.org",
"lon"=>-86.78624}
[13] pry(main)>
我希望你能从那里得到它。
我有一个 URL 显示 JSON 400 个 YMCA 位置的信息。我的目标是能够提取每个位置的纬度和经度,以便在地图上显示这些点。
我正在玩弄 HTTParty,只想从在视图中仅显示纬度和经度开始。
这是我的控制器:
require 'rubygems'
require 'httparty'
class HomesController < ApplicationController
include HTTParty
def index
uri = HTTParty.get"http://www.livestrong.org/we-can-help/ymca.json"
@place = JSON.parse(uri.body)
end
end
视图如下:
<% @place.each do | key, value | %> <br>
<strong><%= key %></strong>
<%= value %>
<% end %>
到目前为止,这会在屏幕上显示所有 JSON。如何挑选各个部分?
你必须从显示的内容中获取提示,如果你看一看,我相信你会看到你的循环只执行了一次,并且唯一的关键输出是 ymca
所有数据都在那个键的 value
中。
如果您进入 irb
并查看 @place['ymca']
中的内容,您会发现它是一个大数组。如果您查看该数组的第一个元素,您会发现它是非常易于管理的数据块:
[12] pry(main)> @place['ymca'].first
=> {"phone_number"=>"205-870-0144",
"title"=>"Mountain Brook YMCA",
"street_address"=>"2401 20th Place South",
"email"=>"livestrong@ymcabham.org",
"city"=>"Birmingham",
"lat"=>33.487881,
"zipcode"=>"35223",
"description"=>"Mountain Brook YMCA",
"state"=>"Alabama",
"thumbnail"=>"v1414706252/tak5bi22hve474jeh1yr.png",
"website"=>"http://ymcabham.org",
"lon"=>-86.78624}
[13] pry(main)>
我希望你能从那里得到它。