0

我的 rails 应用程序有几个内容生成资源,如文章、博客文章等。

我可以为每个单独的资源生成 RSS,但我不知道如何为这些多个提要同步到一个 RSS 提要中。

目前我已经通过 FeedBurner 设置了文章提要,甚至 FeedBurner 也没有这种功能可以将同一应用程序的不同 RSS 合并为一个,这样我的用户就可以订阅单个 RSS(我已经完成了)或只是一个单个主提要获取所有更新。

我找不到任何插件,也找不到我的 Rails 应用程序的任何代码?

4

3 回答 3

2

FeedStitch允许您将多个提要“缝合”在一起。从 Rails 的角度来看,它并没有解决这个问题,但它完成了工作。

我建议将您的饲料放入 feedstitch,然后将 feedburner 与 feedstitch 饲料一起使用。

于 2009-06-18T11:55:09.820 回答
1

如果你想从 Rails 端解决问题,没那么复杂。创建一个新操作并获取要格式化为提要的记录并创建提要。

# the action
def feed
  @articles = Article.all(:limit => 10)
  @posts = Post.all(:limit => 10)
  @items = @article + @posts

  respond_to do |format|
    format.html
    format.atom
  end
end

# the view
atom_feed do |feed|
  feed.title("Latest items")
  feed.updated(@items.first.try(:created_at))

  for item in @items
    feed.entry(item) do |entry|
      entry.title(item.title)
      entry.content(item.body, :type => 'html')
    end
  end
end

当然,资源必须至少对于您要在控制器中调用的方法共享相同的 API。 http://api.rubyonrails.org/classes/ActionView/Helpers/AtomFeedHelper.html#M001900

于 2009-06-18T12:14:38.143 回答
0

如果您接受依赖外部服务,您可以使用 RSS Mix 或 Yahoo! 管道:

www.rssmix.com/

管道.yahoo.com/pipes/

于 2009-06-18T13:15:47.427 回答