2012-03-13 36 views
0

我有一个来自Zendesk的RSS订阅源(http://mysupport.zendesk.com/forums/some-path/posts.rss),我需要在我的web应用程序的页面上呈现内容。 这样拉内容的首选方法是什么?如何在Rails 3.x视图中呈现RSS提要?

目前我开始倾向于这样的想法,也许我唯一的选择是使用Nokogiri或者httparty。有没有更好的办法?无论哪种方式,将欣赏一些方向指向我的马北。

回答

3

ruby​​有一个内置的RSS解析器,您可以使用..下面的这段代码也会为您缓存结果,并显示最新的4个项目。

require 'rss' 

Rails.cache.fetch("rss-list") do 
    RSS::Parser.parse(open('http://feeds.feedburner.com/your-stuff-here').read, false).items[0..4] 
end 

所以每个项目可以给你一个#title#link(及以上,很明显,像#description

+0

谢谢!如何在缓存中添加过期时间;例如,如果我想每隔30分钟重新搜索一次内容? – ylluminate 2012-03-13 08:23:32

+0

另外,事实证明,这个缓存部分确实失败了。即使在开发模式下,当我暂时打开缓存进行测试时,我也遇到了错误。 – ylluminate 2012-03-13 10:02:10

+0

取决于许多因素......也许删除缓存以简化。 Google for Rails.cache关于如何失效 – 2012-03-13 12:30:09