0

次の問題があります-config.time_zoneを使用していないため、デフォルトでサーバーのタイムゾーンに設定する必要があります(正しく理解している場合)。

そして、レールコンソールで次のようなことをすると

'Oct 12, 2012'.to_datetime 

戻ります

Fri, 12 Oct 2012 00:00:00 +0000 

しかし、私が走るとき

'Oct 12, 2012'.to_date.end_of_day

実際に必要なタイムゾーンを取得します:

2012-10-12 23:59:59 -0400 

なぜそれが起こるのか、どうすれば同じタイムゾーンで動作させることができるのか考えていますか? このリンクを見つけました - https://rails.lighthouseapp.com/projects/8994/tickets/864-string-to_datetime-doesn-t-take-into-account-timezone-or-second-fractions、しかしそうすべきだと思いました固定されます。

ありがとう!

4

1 に答える 1

0

Rails 2.3.14 は、主要なセキュリティ更新が必要でない限り、Rails 2.3 シリーズの最終ラインになる可能性があります。これはパッチが適用されない可能性があります。

を使用to_dateすると とは異なる結果が生成to_datetimeされる可能性があるため、これを何らかの方法で回避できる場合があります。

必要に応じて、任意の DateTime オブジェクトのタイム ゾーンを微調整することもできることを忘れないでください。

于 2012-10-22T18:01:03.020 に答える