Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 正在重试活动工单,不支持的参数类型:Time_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 正在重试活动工单,不支持的参数类型:Time

Ruby on rails 正在重试活动工单,不支持的参数类型:Time,ruby-on-rails,ruby,Ruby On Rails,Ruby,但这是我的输出日志: 下午3:59:21 web.1 |由于标准错误,在3秒内重试SendTrackerToShipupJob。最初的例外是零。 下午3:59:21 web.1 |不支持的参数类型:时间 它不会再触发。有什么想法吗?可能是因为您正在将日期解析为作为job参数传递的JSON对象 在我的例子中: SendTrackerToShipupJob.set(wait: 5.minutes).perform_later(...) 创建的_at属性会导致问题。 要解决此问题,请将JSON转换为

但这是我的输出日志:

下午3:59:21 web.1 |由于标准错误,在3秒内重试SendTrackerToShipupJob。最初的例外是零。 下午3:59:21 web.1 |不支持的参数类型:时间


它不会再触发。有什么想法吗?

可能是因为您正在将日期解析为作为job参数传递的JSON对象

在我的例子中:

SendTrackerToShipupJob.set(wait: 5.minutes).perform_later(...)
创建的_at属性会导致问题。 要解决此问题,请将JSON转换为哈希:

SendTrackerToShipupJob.set(wait: 5.minutes).perform_later({
    [...]
    created_at: ...
})

你是如何执行这项工作的?你现在正在执行吗?。如果是这样的话,您传递的
跟踪器
对象可能包含一些无法序列化的时间属性,这可能会导致问题。不确定是否真的是这样,因为如果我没有错的话,active job会调用对象上的
到_json
来序列化它:/噢,我完全忘记了方法调用,我编辑了我的问题@fantaOh my you is right,它来自
tracker
cool中的一个日期,如果你能发布你的修复方案,让别人在遇到类似问题时能找到答案,那就太好了。
SendTrackerToShipupJob.set(wait: 5.minutes).perform_later({
    [...]
    created_at: ...
})
SendTrackerToShipupJob.set(wait: 5.minutes).perform_later({
    [...]
    :created_at => ...
})