如何在Rails 3中创build一个RSS / Atom feed?

我对Rails 3很新,我正在尝试制作一个RSS / Atom feed。 我知道auto_discovery_link_tag ,但是关联的控制器/动作应该是什么样的?

谢谢!

Auto_discovery_link_tag是一个好的开始。 一个快速的谷歌search,我发现了如何在Rails中创build一个RSS提要的博客文章。 让我来填写你的关联控制器/操作应该是什么样的:

控制器/ posts_controller.rb

def feed @posts = Post.all(:select => "title, author, id, content, posted_at", :order => "posted_at DESC", :limit => 20) respond_to do |format| format.html format.rss { render :layout => false } #index.rss.builder end end 

这个文件的名字应该和控制器匹配。 见下文:

意见/职位/ feed.rss.builder

 xml.instruct! :xml, :version => "1.0" xml.rss :version => "2.0" do xml.channel do xml.title "Your Blog Title" xml.description "A blog about software and chocolate" xml.link posts_url for post in @posts xml.item do xml.title post.title xml.description post.content xml.pubDate post.posted_at.to_s(:rfc822) xml.link post_url(post) xml.guid post_url(post) end end end end 

这就是所有的Railsy魔术发生的地方。 这里,RSS源XML被生成并返回给HTTP。

使用auto_discovery_link_tag:

在控制器中:

 respond_to do |format| format.html format.atom {render action: 'index', layout: false} end