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=调用]
只是一个简短的问题。在观看 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=调用]