1

出于某种原因,当我使用 Resque.enqueue 将我的日期时间传递给另一个类时,我在日期之后有空格的地方添加了一个“T”,而其他空格正在被删除......

这是方法:

def self.enqueue_job(start_date, end_date, type, date_type)
    query = [start_date, end_date, type, date_type].join(',')
    begin
        Resque.enqueue(Reports::Generator, start_date, end_date, type, date_type)
        add_to_queue(query)
    rescue Resque::TermException
        Resque.enqueue(Reports::Generator, start_date, end_date, type, date_type)
    end
  end

它将查询变量设置为:

“2013-05-31 07:59:59 -0700,2013-06-05 07:59:59 -0700,无,created_at”

但是当我跑步时

@query = [start_date, end_date, type, date_type].join(',')

从上面的生成器模型中,@query 等同于:

“2013-05-31T07:59:59-07:00,2013-06-05T07:59:59-07:00,无,created_at”

我猜它与 Resque.enqueue 有关,但不明白。

4

1 回答 1

1

我解决了。问题在于时间和日期时间的转换。在传递到生成器类之前,我将值设置为时间,并且沿着它被转换为日期时间的路线的某处。

这是帮助我得出这个结论的帖子: 日期时间到时间转换中的奇怪 Ruby 行为

于 2013-06-17T00:16:08.460 回答