我是新来的,但看起来很适合我的需要。
实际上,我正在尝试设置一个简单的测试应用程序,比如:
require 'resque'
require 'resque/job_with_status'
class WordAnalyzer < Resque::JobWithStatus
@queue = "word_analysis"
def self.perform(word)
puts "About to do heavy duty analysis on #{word}"
sleep 3 # fake analysis here
# this would be something impressive
puts "Finished with analysis on #{word}"
end
end并创建后台工作人员
WordAnalyzer.create(word)如果不使用resque-status,它就能很好地工作(调用enqueue而不是创建工作人员)。有了地位,我得到了一个
错误的参数数(2表示1) /./resque_test/lib/word_Analyzer.rb:6:in
perform' /.../.rvm/gems/ruby-1.9.2-p136/gems/resque-1.16.1/lib/resque/job.rb:127:in执行‘
我已经搜索了docu和代码,但没有找到正确的方法将参数传递给一个重新定位的工作。有可能吗?
提前谢谢。
发布于 2011-06-07 04:49:27
你应该这么做
WordAnalyzer.create(:word => word)并在执行方法中访问该单词。
def perform
word = options['word']
puts "About to do heavy duty analysis on #{word}"
sleep 3 # fake analysis here
# this would be something impressive
puts "Finished with analysis on #{word}"
endhttps://stackoverflow.com/questions/6044322
复制相似问题