Jak utworzyć nowy obiekt DateTime w określonej strefie czasowej (najlepiej domyślnej strefie czasowej mojej aplikacji, a nie UTC)?

Ustawiłem strefę czasową w/config/application.rbi spodziewam się, że wszystkie czasy generowane w mojej aplikacji będą domyślnie w tej strefie czasowej, ale kiedy utworzę nowyDateTime obiekt (używając.new), tworzy go wGMT. Jak mogę go umieścić w strefie czasowej mojej aplikacji?

/config/application.rb

config.time_zone = 'Pacific Time (US & Canada)'

irb

irb> DateTime.now
=> Wed, 11 Jul 2012 19:04:56 -0700 

irb> mydate = DateTime.new(2012, 07, 11, 20, 10, 0)
=> Wed, 11 Jul 2012 20:10:00 +0000                    # GMT, but I want PDT

Za pomocąin_time_zone nie działa, ponieważ po prostu konwertuje czas GMT na czas PDT, który jest niewłaściwym czasem:

irb> mydate.in_time_zone('Pacific Time (US & Canada)')
=> Wed, 11 Jul 2012 13:10:00 PDT -07:00               # wrong time (I want 20:10)

questionAnswers(4)

yourAnswerToTheQuestion