Frage

Ich habe meine Umgebung überprüft.rb

config.time_zone = 'Prague'

Nichts in der Entwicklung.rb in Bezug auf die Zeit

Dies scheint theoretisch zu funktionieren ...

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

auch richtig ...

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

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

Korrekt!

Aber wenn ich einen neuen Datensatz in Schienen erstelle oder einen alten aktualisiere

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

Und haben viele Male viele Male wieder gestartet!

War es hilfreich?

Lösung

Es sieht so aus, als würde es es in UTC (GMT -Zeit) speichern, was zwei Stunden früher als Ihre Ortszeit ist. In hohem Maße werden die Erstellungszeiten in UTC besser gespeichert -> Sie übersetzen sie dann beim Betrachten.

Bearbeiten: die Zeitstempelklasse Scheint darauf hinzudeuten, dass der lokale Zeitstempel verwendet werden soll. Möglicherweise möchten Sie die Einstellung der angegebenen Dokumentation überprüfen.

Andere Tipps

Was ist die Zeit, wenn Sie diesen Datensatz über die Konsole auswählen? 15:55 oder 17:55?

Wenn Sie über die Konsole auswählen, wird die festgelegte Zeitzone verwendet. Natürlich unterscheidet es sich natürlich vom "realen" Zeitstempel in der MySQL -Datenbank.

Sich ansehen Seltsame Zeitkonsistenzen zwischen Produktion und Entwicklung auch.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top