只是一个简单的问题。观看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
我问自己应该在何时/何时调用方法self.update_from_feed_continuously(blah,blah)?它会在我的Feed控制器中,还是在视图中(即索引,显示等等)
非常感谢任何帮助。这个问题一直困扰着我......
答案 0 :(得分:1)
这只是一种从输入网址连续获取Feed的方法。
它可以在任何地方调用,它取决于具体情况。
当您通过controller
提交Feed网址时,请在controller
中调用该方法。
当您确定应定期运行Feed任务时,rake
任务可以通过whenever
,https://github.com/javan/whenever