を空ではないが、ここに私のGemfileです:Delayed_jobは、メソッドを実行する実行するが、私は新鮮なレール3のアプリを持っているジョブキュー
source 'http://rubygems.org'
gem 'rails', '3.0.0' gem 'delayed_job'
gem 'sqlite3-ruby', :require => 'sqlite3'
は、ここで私はキューしたいジョブを表すクラスです:
class Me < Struct.new(:something)
def perform
puts "Hello from me"
logger.info "Hello from me"
logger.debug "Hello from me"
raise Exception.new
end
end
実行していない労働者とのコンソールから:
irb(main):002:0> Delayed::Job.enqueue Me.new(1)
=> #<Delayed::Backend::ActiveRecord::Job id: 7, priority: 0, attempts: 0, handler: "--- !ruby/struct:Me \nsomething: 1\n", last_error: nil, run_at: "2010-12-29 07:24:11", locked_at: nil, failed_at: nil, locked_by: nil, created_at: "2010-12-29 07:24:11", updated_at: "2010-12-29 07:24:11">
私が述べたように:何の労働者が存在しませんランニング:しかし、何もputs
の結果として起こりません
irb(main):006:0> Delayed::Job.all
=> []
、何もlogger
呼び出しからログインしていない、:
irb(main):003:0> Delayed::Job.all
=> [#<Delayed::Backend::ActiveRecord::Job id: 7, priority: 0, attempts: 0, handler: "--- !ruby/struct:Me \nsomething: 1\n", last_error: nil, run_at: "2010-12-29 07:24:11", locked_at: nil, failed_at: nil, locked_by: nil, created_at: "2010-12-29 07:24:11", updated_at: "2010-12-29 07:24:11">]
を私はキューが空に取得しscript/delayed_job run
で労働者を開始します例外は発生しません。私は何か助けや洞察力や何かを試していただければ幸いです。
私はまったく同じ問題を抱えています。あなたはこれを解決したことがありますか? – Leddo