首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将多个参数传递给Resque & Resque-Scheduler

将多个参数传递给Resque & Resque-Scheduler
EN

Stack Overflow用户
提问于 2018-03-02 11:28:50
回答 1查看 655关注 0票数 0

我有一个Resque Worker,它接受两个参数

代码语言:javascript
复制
class SendPostWorker
  @queue = :send_post_worker

  def self.perform(post_id, group_id)
    group = Group.find(group_id.to_i)
    ::BotMessageDispatcher.new(group, post_id).work
  end
end

在控制器操作中,我使用Resque & Resque-scheduler将作业入队。

代码语言:javascript
复制
class PostsController < ApplicationController
  def create
    # Code
    Resque.enqueue_in(@post.scheduled_time - Time.now, SendPostWorker, @post.id, params['groups']['group'].to_i)
    # Code
  end
end

当我在worker中硬编码params‘group’参数时,worker最初工作得很好(只向它传递了一个参数),但现在我试图使作业更智能(从控制器接收组id ),它会抱怨传递的参数数量

ArgumentError Error wrong number of arguments (given 2, expected 1) /Users/Lois/Desktop/projects/bot/app/workers/send_post_worker.rb:4:in `perform'

提前感谢您的帮助~!

EN

回答 1

Stack Overflow用户

发布于 2018-03-02 14:53:15

因此,在与同事交谈后,我修复了这个问题。张贴给未来的读者。

对重新排队的工作进程进行更改后,重新启动它们。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49062403

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档