オファーモデルがあります。コマンドラインからアクセスすると、次の形式で表示されます。
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
この場合、タイムゾーンに合わせて調整された時間を返すにはどうすればよいですか?