views:

438

answers:

1

Hi all,

I am pretty green with coding in Ruby but am trying to pull an XML feed into a Ruby object as follows (ignore the ugly code please):

<% doc = Nokogiri::XML(open("http://api.workflowmax.com/job.api/current?apiKey=#{@feed.service.api_key}&amp;accountKey=#{@feed.service.account_key}")) %>

<% doc.xpath('//Jobs/Job').each do |node| %>
    <h2><%= node['name'].text %></h2>
    <p><%= node['description'].text %></p>
<% end %>

Basically I want to iterate through each Job and output the name, description etc.

What am I missing?

Many thanks,

Galen

+1  A: 

Well, since you haven't shown us any sample XML, I'm going to go out on a limb and say that it is not likely the description is in an attribute. You've used the syntax to extract 'name' and 'description' attributes from the 'job' element. If instead they are nested elements you want something like this:

<% doc.xpath('//Jobs/Job').each do |node| %>
    <h2><%= node.xpath('name').inner_text %></h2>
    <p><%= node.xpath('description').inner_text %></p>
<% end %>
Mark Thomas