私のマシンのレールタイムの悪魔…それはすべてをチェックした2時間を食べます!

StackOverflow https://stackoverflow.com/questions/1406156

質問

environment.rbを確認しました

config.time_zone = 'Prague'

時間に関するdevelopment.rbには何もありません

これは理論的には機能しているようです...

Time.zone.now # Thu, 10 Sep 2009 17:51:35 CEST +02:00

また正しい...

Time.now # Thu Sep 10 17:52:10 +0200 2009

mysql... SELECT NOW() # 2009-09-10 17:53:48  

正しい!

しかし、railsで新しいレコードを作成するとき、または古いレコードを更新するとき

Item.create(:price => price, :spots => beds) # 2009-09-10 15:55:28

何度もレールを再起動しました!

役に立ちましたか?

解決

UTC(GMT時間)で保存しているようです。これは現地時間より2時間早いです。ほとんどの場合、作成時間はUTCでより適切に保存されます->その後、表示時に翻訳します。

編集:タイムスタンプクラスは、ローカルタイムスタンプが使用されることになっています。ドキュメントに示されている設定を確認することをお勧めします。

他のヒント

コンソールでそのレコードを選択した場合、何時ですか? 15:55または17:55?

コンソールで選択した場合、設定されているタイムゾーンが使用されるため、当然ながら「実」とは異なります。 mysqlデータベースのタイムスタンプ。

本番と開発の間の奇妙な時間の不一致をご覧ください

a>も。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top