sql >> Databasteknik >  >> RDS >> Mysql

Python/Django MySQL Datetime-hantering och tidszon

Det är en komplex bindning att förklara. Från Django 1.4 ,

det här hänvisar till TIME_ZONE . Så vad är din USE_TZ ? Om din USE_TZ är sant kommer Django att lagra datetime i UTC och använda TIME_ZONE att visa i mallar och tolka formulär.

Detta beror på att om du ändrar din TIME_ZONE senare när du är värd för din webbplats i ett annat territorium är det lätt att konvertera valfri datumtid från UTC till valfri tidszon.

I Django 1.3 och tidigare,

Men berättar inte i vilken tidszon datum och tid kommer att lagras i databasen. Behöver experimentera ändå (min gissning är UTC).

print datetime.datetime.now() skriver ut datatiden enligt tidszonsinställningen för din servermaskin om du inte har öppnat pythonkonsolen via manage.py shell .

Detsamma gäller MySQL-konsolen. Den visar datum och tid i din maskins tidszon snarare än vad som är lagrat i databasen om jag har rätt.




  1. normalisera tecken med accent i MySQL-frågor

  2. CHECK-begränsningen i MySQL fungerar inte

  3. AUTO_INCREMENT och LAST_INSERT_ID

  4. Rails på OSX 10.11 El Capitan:Biblioteket är inte laddat:libmysqlclient.18.dylib