Wie erstelle ich ein neues DateTime-Objekt in einer bestimmten Zeitzone (vorzugsweise der Standardzeitzone meiner App, nicht UTC)?

Ich habe die Zeitzone eingestellt/config/application.rbund ich gehe davon aus, dass alle in meiner App generierten Zeiten standardmäßig in dieser Zeitzone liegen, wenn ich jedoch eine neue erstelleDateTime Objekt (mit.new), es schafft es inGMT. Wie kann ich erreichen, dass es in der Zeitzone meiner App liegt?

/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

Verwendenin_time_zone funktioniert nicht, weil dies nur die GMT-Zeit in PDT-Zeit umrechnet, was die falsche Zeit ist:

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)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage