На Rails, как запустить простую строку, используя delayed_job? - PullRequest
1 голос
/ 03 сентября 2010

Для http://github.com/collectiveidea/delayed_job

Допустим, я просто запускаю совершенно новый проект Rails и хочу, чтобы каждые 1 минуту запускалось следующее:

puts "Time is now #{Time.now}"

Как добавить его впроект?

README говорит:

class NewsletterJob < Struct.new(:text, :emails)
  def perform
    emails.each { |e| NewsletterMailer.deliver_text_to_email(text, e) }
  end    
end  

Delayed::Job.enqueue NewsletterJob.new('lorem ipsum...', Customers.find(:all).collect(&:email))

но где вы должны поместить этот контент?Вы запускаете его один раз, чтобы поставить в очередь?Как установить время начала и частоту?

1 Ответ

1 голос
/ 31 октября 2010

delayed_job - драгоценный камень для фоновых задач.Вам нужен инструмент планирования для этого.Я рекомендую http://github.com/javan/whenever.

http://www.ruby -toolbox.com / Categories / scheduling.html

...