2010-05-20 64 views
1

我非常綠色與Ruby的編碼,但我想拉一個XML飼料到Ruby對象:使用Nokogiri將XML提要解析爲Ruby對象?

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

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

基本上,我想通過每個Job和輸出迭代的名稱,說明等

我錯過了什麼?

+0

我會建議分離邏輯和演示文稿。您應該在Controller中進行XMl解析。你也應該把它變成asyn,因爲你不知道提交請求/解析需要多長時間。 除此之外你會得到什麼問題?某種錯誤?空白頁面? – Zepplock 2010-05-20 22:52:20

+0

如果使用.content替換.text,會發生什麼情況?否則能夠看到XML的樣本也會有所幫助 – Alistair 2010-05-22 20:43:12

回答

5

好吧,既然你還沒有向我們展示任何XML示例,我將會立即斷言並說它不可能是屬性中的描述。您已使用語法從'job'元素中提取'name'和'description'屬性。如果相反,他們是嵌套元素,你想這樣的事情:

​​