1

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))

しかし、このコンテンツをどこに配置する必要がありますか? エンキューするために一度実行しますか?開始時刻と頻度はどのように設定しますか?

4

1 に答える 1

1

delayd_jobは、バックグラウンドタスク用のgemです。そのためのスケジューリングツールが必要です。http://github.com/javan/wheneverをお勧めします。

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

于 2010-10-30T21:07:05.343 に答える