我有一个报价模型。当我从命令行访问它时,它以以下格式显示:
1.9.3p392 :058 > o = Offer.last
=> #<Offer id: 15, title: "Testing", valid_from: "2013-04-12 09:00:00", valid_until: "2013-04-12 14:00:00", created_at: "2013-04-12 18:31:54", updated_at: "2013-04-12 18:31:54">
在这个输出中,valid_from
和valid_until
按照我期望的格式进行了格式化。然而,当我直接访问它们时,我得到了一些不同的东西:
1.9.3p392 :059 > o.valid_from
=> Fri, 12 Apr 2013 05:00:00 EDT -04:00
问题来自于我在app/models/offer_model.rb
内部的这个函数:
def start_hour
self.valid_from.strftime('%l').to_i unless self.valid_from.nil?
end
当我使用上面的模型运行这个命令时,输出是5
。在这种情况下,我希望它返回9
。在这种情况下,我如何让start_hour
返回为时区调整的小时?
您在config/application.rb中使用的是哪个时区?Rails将打印日期调整为此文件中设置的时区。