0

我正在尝试对 MailChimp API 进行 Hominid 调用,但没有取得多大成功。我的电话看起来像

h.list_subscribe(:user_list_id, params[:email], {'FNAME' => '', 'LNAME' => ''}, 'html', true, true, true, false)

其中 h 是 Homind::API 类的对象。该对象也没有延迟作业 gem 提供的“延迟”方法。它甚至没有像“类”或“方法”这样的标准方法。当我创建一个自定义作业时,它不会添加到作业队列中。

明确性,将方法设置为“handle_asynchronously”会导致

can't convert nil into String

lib/delayed/yaml_ext.rb:16:in `value='

我猜 Delayed_Job 无法序列化非常剥离的自己的 Hominid::API 对象。非常欢迎就如何解决这个问题提出建议。谢谢!

4

1 回答 1

0

啊,答案一直都在。

创建自定义作业时,需要从初始化程序加载它,以便在延迟作业执行作业时可用。一个简单的,

require 'my_custom_job_class'

在任何初始化程序中都可以。

您还可以从delayed_job wiki找到更多信息

于 2011-10-09T11:51:44.790 回答