If you want to iterate over each nested hash - it totally depends on the
depth of the hash and the kind of view you're trying to build using it. If
you dont have knowledge about the other keys that come in the hash, use
this pattern.

h = { "a" => 100, "b" => 200 }h.each {|key, value| puts "#{key} is #{value}" }


On Thu, Nov 13, 2014 at 6:59 PM, Scott Bradford <[email protected]>
wrote:

> I am trying to figure out how to output a global variable to my view
> page to EACH DO loop the contents of my xml file.
>
>
> This is how my controller is configured:
>
> ** CONTROLLER CLASS **
> require 'net/http'
>   require 'httparty'
>   require 'rexml/document'
>   require 'uri'
>   require 'remixr'
>   include REXML
>
>  #user inputs from form
>   def result
>    $zip_code = params[:zip_code]
>    $range = params[:range]
>
>  #Modifiable URL parameters
>     $base_url = 'http://api.remix.bestbuy.com'
>     $uri = URI.parse($base_url)
>     $stores_call = '/v1/stores'
>     $apiKey = '?apiKey='YOUR API KEY'
>     $area_para = "(area(#{$zip_code},#{$range}))"
>     $store_para = '&show=storeID,name'
>     $xml_url =
> "#{$base_url}#{$stores_call}#{$area_para}#{$apiKey}#{$store_para}"
>
> # Data call and parsing into xml hash array
>     http = Net::HTTP.new($uri.host, $uri.port)
>     request = Net::HTTP::Get.new($xml_url)
>     response = http.request(request)
>
>     $xml = response.body
>     $doc = Document.new $xml
>
> ** VIEW PAGE **
> <%=
>     $doc.each do |item|
>     puts "{storeID}=#{item}"
>     end
>   %>
>
> The $doc object is a nested hash with store locations that each have
> other characteristics. Currently the parameters only pull the StoreID
> and name. So the loop will need to pull each StoreID, then name, then
> repeat loop. I am going to be building the loop around an HTML table,
> but that would be extra credit if someone wants to take it on.
>
> Thank you so much!
>
> --
> Posted via http://www.ruby-forum.com/.
>
> --
> You received this message because you are subscribed to the Google Groups
> "Ruby on Rails: Talk" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/rubyonrails-talk/d56fc1207bc5c99a10e284d859307c9f%40ruby-forum.com
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/rubyonrails-talk/CAFKVRj_S292GxU6hfOXR1JNMgC%2B4ti6-in9Cn8qBQfzBPew1gQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to