2

Date.today正しい日付を表示していますが、ステートメントで使用Date.todayするModel.createと、データベースに前の日付が挿入されますがDate.today.to_datetime、データベースに正しい日付が挿入されます。

私の質問はDate.todayModel.createメソッドが DB に前の日付を挿入するのはなぜですか?

4

1 に答える 1

0

Rails では /config/application.rb にタイムゾーンの設定があります:

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

一貫性を保つため、すべての時刻は Rails のデータベースに UTC で保存されます。したがって、コンソールで試す場合:

$ rake time:zones:local

販売したすべての利用可能なタイム ゾーンを表示します。

次のように入力して違いを確認できます。

Time.now

Time.zone.now

Railsが提供する作成時間と更新時間のデフォルト列は、ほとんどの場合問題ないと思います。

于 2012-11-28T06:26:34.910 に答える