把dateTime拉回几个小时(轨道)

时间:2016-02-04 20:17:16

标签: ruby-on-rails

我有一些短信比他们应该提前6小时呈现。我在想有一个时区问题,但是我想在最短的时间内把它拉回6个小时,然后在我找到bug的根源之前推出它。

然而,我一直在尝试改变这种情况时遇到非常令人沮丧的经历。

我已经尝试在我的视图中进行更改,看起来像这样。公交车的关键在于message.date_sent

        - @twilio_client.account.sms.messages.list({:to => @player.phone})[0,5].each do |message|
          %tr
            %td= message.date_sent
            %td= message.from
            %td= message.to
            %td= message.status
            %td
              = message.sid
              %br
              = message.body

最初我认为解决方案可能在视图中,然后转向td= message.date_sent(-6.hours)但是我遇到错误,-不是定义的方法。

在我的控制器中,我尝试创建类似

的内容
def minus6
  -6.hours
end

然后尝试将其放在我的视图末尾,例如td= message.date_sent.minus6但是我再次遇到undefined method 'minus6' for "Wed, 27 Jan 2016 20:22:34"

如果有人能帮助我,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

查看ActiveSuport助手

http://api.rubyonrails.org/classes/ActiveSupport/Duration.html#method-i-ago

6.hours.ago(message.date_sent)