[英]Sidekiq not accepting Rake task arguments
當我運行rake任務時:
namespace :foo do
task :bar => :environment do
MyWorker.perform_async(some_id)
end
end
我收到此錯誤:
{"retry"=>3, "queue"=>"default", "class"=>"MyWorker", "args"=>[3], "jid"=>"05737ccbac2c88443e3014c4", "enqueued_at"=>1392842821.15404, "error_message"=>"wrong number of arguments (1 for 0)", "error_class"=>"ArgumentError", "failed_at"=>2014-02-19 20:47:01 UTC, "retry_count"=>0}
現在,奇怪的是,如果我只在Rails控制台上運行MyWorker.perform_async(some_id)
部分,它就可以完美地工作
MyWorker.perform就像:
def perform some_id
MyModel.new(some_id).sync
end
有任何想法嗎?
如果您的perform方法采用some_id參數,那么我很可能是MyModel
。 MyModel
的initialize方法是什么樣的?
也可能是Rails的錯誤: https : //github.com/mperham/sidekiq/issues/601
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.