JavaScript に開始日時と終了日時を配置しようとする 2 行のコードがあります。 new Date('<%= DateTime.now.beginning_of_day.to_s %>')
は一例です。は、 JavaScript が 2012 年 8 月 13 日 00:00 に変換するDateTime.now.beginning_of_day
文字列を返します。2012-08-13T00:00:00-04:00
完全。ただし、DateTime.yesterday.beginning_of_day.to_s
「2012-08-11 20:00:00-04:00」が返され、JavaScript はこれを 8/11/2012 20:00 に変換します。一昨日の午後 8 時は要りません。私は昨日の真夜中が欲しいです。Date.yesterday
、.in_time_zone("Eastern Time (US & Canada)")
、.utc
およびその他の無数の順列を試しました。と同じ方法でフォーマットされた過去の日付を取得するにはどうすればよいDateTime.now
ですか?
2 に答える
2
これを試して:
DateTime.now.yesterday.beginning_of_day
于 2012-08-13T21:07:59.127 に答える
0
Time.zoneを使用します
次に、ハッキーなto_dateをto_timeに戻し、深夜にゼロになるようにします。
new Date('<%= Time.zone.now.to_date.to_time.to_s %>')
new Date('<%= (Time.zone.now - 1.day).to_date.to_time.to_s %>')
代わりに使用できるはずですTime.zone.now.yesterday.to_date.to_time.to_s
-1.day
于 2012-08-14T03:20:02.573 に答える