0
コントローラのアクションが実行されてから3分後にジョブを実行しようとしています。X分でジョブを開始
私はDelayedJobで、これを試してみました:インデックス・ページにアクセスするときしかし、私はログ何に表示されていない
class ReminderJob < Struct.new(:user_id)
def perform
p "run reminder job"
# do something
end
handle_asynchronously :perform, :run_at => Proc.new { 3.minutes.from_now }
end
、および:
# in my controller
def index
@books = Book.all
Delayed::Job.enqueue(ReminderJob.new(params[:user_id]))
end
そしてReminderJob.rb
ファイルに3分後に何も起こりません。
どうしたのですか? sleep
を使わずに「今からX分以内に」タスクを実行する別の推奨方法はありますか?
あなたは[共通の問題の#の何も-起こりません]読んだことがあります(https://github.com/ collectiveidea/delayed_job/wiki/Common-problems#何も起こらない)? –
レールに内蔵された 'ActiveJob'を使わないのはなぜですか? – siegy22
@RaVeN activeJobを使って「この仕事をX分で開始する」と言う方法が見つかりませんでした。これは可能ですか? –