sidekiq で何が起こっているのかわかりません。昨日はこれがうまくいったと断言できたけど、夢見ていたに違いない。
ここに私のワーカークラスがあります:
class TagPostWorker
include Sidekiq::Worker
sidekiq_options queue: "tag"
sidekiq_options retry: false
def perform(options = {})
current_user = User.find(options[:user_id])
end
end
投稿の show メソッドでこのコマンドを実行してみました:
TagPostWorker.perform_async({:user_id => current_user.id})
しかし、私はこのエラーが発生します:
2013-08-17T22:45:45Z 4029 TID-ors6jfr54 TagPostWorker JID-ae203958bb3bcee01c8f83ef INFO: start
2013-08-17T22:45:45Z 4029 TID-ors6jfr54 TagPostWorker JID-ae203958bb3bcee01c8f83ef INFO: fail: 0.003 sec
2013-08-17T22:45:45Z 4029 TID-ors6jfr54 WARN: {"retry"=>false, "queue"=>"tag", "class"=>"TagPostWorker", "args"=>[{"user_id"=>7}], "jid"=>"ae203958bb3bcee01c8f83ef", "enqueued_at"=>1376779545.9099338}
2013-08-17T22:45:45Z 4029 TID-ors6jfr54 WARN: Couldn't find Post without an ID
sidekiq がどのように Post を試みているのか理解できません。なぜなら、私はそれを perform メソッドで呼び出していないからです。何が起こっているのでしょうか?
どんな助けでも大歓迎です。