3

Rails を 2 台のマシンで実行していますが、メソッドとは異なる結果が得られto_timeます。システムのタイムゾーンとTime.zone構成のみを確認しましたが、何か不足していますか? ありがとう

サーバー 1

user@Server1:/var/www/app$ date
Wed Oct 23 23:56:35 MDT 2013
user@Server1:/var/www/app$ cat /etc/timezone
America/Denver

user@Server1:/var/www/app$ bundle exec rails c production
irb(main):011:0> Time.zone
=> (GMT+00:00) UTC
irb(main):012:0> Date.parse("10/24/2013").to_time
=> 2013-10-24 00:00:00 +0000

サーバー 2

user@Server2:/var/www/app$ date
Thu Oct 24 00:03:28 MDT 2013
user@Server2:/var/www/app$ cat /etc/timezone
America/Denver

user@Server2:/var/www/app$ bundle exec rails c production
irb(main):002:0> Time.zone
=> (GMT+00:00) UTC
irb(main):003:0> Date.parse("10/24/2013").to_time
=> 2013-10-24 00:00:00 -0600    
4

1 に答える 1

4

Time#local_time(Date#to_time の実装で ActiveSupport によって呼び出されます) はTZ、「ローカル」時間にタイムゾーンを使用する必要がある環境変数を尊重します。

2 つのサーバー間で環境が同じであることを確認してください。

于 2013-10-24T07:42:25.613 に答える