Ruby on rails 何时/何地从\u feed\u连续调用self.update\u?
只是一个简单的问题。在观看RailsCasts ep 168并遇到以下代码后:Ruby on rails 何时/何地从\u feed\u连续调用self.update\u?,ruby-on-rails,rss,feedjira,Ruby On Rails,Rss,Feedjira,只是一个简单的问题。在观看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(f
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\u from\u feed\u continuouslyblah,blah?它是在我的提要控制器中,还是在视图(即索引、显示等)中
非常感谢您的帮助。这个问题困扰了我一段时间 这只是一种从输入url连续获取提要的方法 它可以在任何地方调用,这取决于情况 当您通过控制器提交提要url时,请在控制器中调用该方法 当您决定feed任务应该定期运行时,rake任务可以随时调用它