2017-04-03 2 views
0

간단한 질문입니다. RailsCasts에게 EP # 168를보고 다음 코드를 통해 오는 후 : 내가 (어쩌구 저쩌구) self.update_from_feed_continuously 방법을 호출해야/때 어디언제 어디서 self.update_from_feed_continuously를 호출할까요?

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 

을 내가 직접 부탁 해요? 내 피드 컨트롤러 또는보기 (즉, 색인, 쇼 등)에있을 것입니다

어떤 도움을 많이 주시면 감사하겠습니다. 이 질문은 잠시 나를 괴롭 히고 있습니다 ...

답변

1

이것은 입력 URL에서 피드를 계속 가져 오는 방법 일뿐입니다.

어디서나 호출 할 수 있으며 상황에 따라 다릅니다.

controller을 통해 피드 url을 제출할 때 controller의 메소드를 호출하십시오.

당신이 공급 작업이 다음은 whenever 통해 rake 작업을 호출 할 수 있습니다 정기적으로 실행해야한다는 결정 https://github.com/javan/whenever

관련 문제