When/Where 打电话给 self.update_from_feed_continuously?

When/Where to call self.update_from_feed_continuously?

只是一个简短的问题。在观看 RailsCasts ep #168 并遇到以下代码后:

class FeedEntry < ActiveRecord::Base
  def self.update_from_feed(feed_url)
    feed = Feedzirra::Feed.fetch_and_parse(feed_url)
    add_entries(feed.entries)
  end

  def self.update_from_feed_continuously(feed_url, delay_interval = 15.minutes)
    feed = Feedzirra::Feed.fetch_and_parse(feed_url)
    add_entries(feed.entries)
    loop do
      sleep delay_interval
      feed = Feedzirra::Feed.update(feed)
      add_entries(feed.new_entries) if feed.updated?
    end
  end

  private

  def self.add_entries(entries)
    entries.each do |entry|
      unless exists? :guid => entry.id
        create!(
          :name         => entry.title,
          :summary      => entry.summary,
          :url          => entry.url,
          :published_at => entry.published,
          :guid         => entry.id
        )
      end
    end
  end
end

我在问自己 where/when 我应该调用方法 self.update_from_feed_continuously(废话,废话)吗?它会出现在我的 Feed Controller 中还是视图(即索引、显示等)

非常感谢任何帮助。这个问题困扰了我一段时间...

这只是一种从输入 url 连续获取提要的方法。

随处调用,视情况而定

当您通过 controller 提交提要 url 时,然后调用 controller 中的方法。

当你决定feed任务应该定期运行,那么它可以被一个rake任务通过whenever, https://github.com/javan/whenever[=15=调用]