Rails延迟作业NoMethodError:未定义的方法`前缀

时间:2015-08-21 23:19:45

标签: ruby-on-rails ruby-on-rails-4 asynchronous delayed-job

对于类方法的延迟作业,我收到此错误:

FAILED (0 prior attempts) with NoMethodError: undefined method `prefix' for #<Object:0x007f9801e1d548>

这是异步方法:

class << self
    def new_request(users, api_client)
      api_client.create_async_call({
        subject: 'subject',
        body: 'body',
        recipients: [user1, user2...]
      })
    end
    handle_asynchronously :new_request
end

我以这种方式调用方法:

Notification.new_catalog_request(users, api_client)

我查看了延迟作业的README文件并查看了其他stackoverflow答案,但没有一个有效。

要让这个异步作业运行,我需要做什么?

1 个答案:

答案 0 :(得分:1)

很可能你的api_client没有在作业中正确序列化和反序列化。您可能会更好地传递必要的数据,并从作业中重新实例化api_client对象,而不是依赖于序列化版本。