0

これが問題の方法です。

def published_at_setter
    self.published_at = Time.strptime("#{@date} #{@time}", "%m/%d/%Y %I:%M %p")
    puts " ~~~~~~~~~~~~~~~~~~~ #{@date} #{@time} ~~~~~~~~~~~~~~~~ #{self.published_at}"
end

@date = "09/11/2012" および @time "01:45 AM" を使用して、webbrick コンソールでこれを取得します。WFT?

~~~~~~~~~~~~~~~~~~~ 09/11/2012 01:45 AM ~~~~~~~~~~~~~~~~ 2012-09-11 06:45:00 UTC

Rails コンソールでは、期待どおりの結果が得られます。"2012-09-11 01:45:00 -0500"

4

1 に答える 1

2

の代わりにTime.strptime、 を使用する必要がありますTime.zone.parse

def published_at_setter
    self.published_at = Time.zone.parse("#{@date} #{@time}")
    puts " ~~~~~~~~~~~~~~~~~~~ #{@date} #{@time} ~~~~~~~~~~~~~~~~ #{self.published_at}"
end
于 2012-11-05T17:07:57.853 に答える