Resque错误 - 参数数量错误(0表示1)

时间:2012-03-12 09:35:00

标签: ruby-on-rails ruby-on-rails-3 gem redis resque

我正在使用救援来处理所有繁重的背景任务, 在我的库/ parsers / file.rb中我有

Resque.enqueue(Hello)

这将重定向app / workers / file.rb我所在的位置

class Hello
def self.perform(page)
.......
.......
end
rescue Exception => e
log "error: #{e}"
end
end

我的lib / tasks / resque.rake文件是

    require "resque/tasks"  

task "resque:setup" => :environment  

当我尝试使用

执行作业时,我可以排队作业
    rake resque:work QUEUE=*

通过说

来抛出错误
    argument error
wrong number of arguments (0 for 1)

我在这方面做错了什么?

1 个答案:

答案 0 :(得分:3)

pjumble是完全正确的,你没有通过页面。

Resque.enqueue(Hello, page_id)

enqueue接受Job后跟执行操作的args。如果你有:

class Hello
 def self.perform(page_number, page_foo, page_bar)
   ...
 end
end

然后你会这样做:

Resque.enqueue(Hello, page_number, page_foo, page_bar)