UTC datetime dönüşümleri hakkında bir sürü soru var ve "en iyi yol" konusunda bir fikir birliği yok gibi görünüyor.Python ile UTC tarihini nasıl alabilirim, kullanıcıları otomatik algılama saat dilimi ve datetime öğesini istediğiniz biçime dönüştürmek nasıl?
Buna göre: http://lucumr.pocoo.org/2011/7/15/eppur-si-muove/, pytz gitmek için en iyi yoldur.
Herkes görüyorum "replace
değil, localize
Yaz Saati için ayarlar"
Bu adam https://stackoverflow.com/a/7465359/523051 diyor ... bu datetime.datetime.utcnow().replace(tzinfo=pytz.utc)
gibi bir saat dilimine göre dönüştürerek gösterir ama o kullanıcının dilimini nasıl söylemez kullanarak pytz Görüntüleyeninizin olduğu bu olmadığını biliyor olamaz çünkü anlamıyorum kendi zaman dilimini (users_timezone = timezone("US/Pacific")
), ... tedarik edilir
Bu adam https://stackoverflow.com/a/4771733/523051 saat dilimleri otomatik olarak algılamaya bir yolu vardır, ancak Bu, Armin Ronacher tarafından önerildiği gibi, pytz değil dateutil
kütüphanesini kullanıyor ve (sadece sarı kutudaki o çapa yukarıdaki http://docs.python.org/library/datetime.html#strftime-and-strptime-behavior) resmi piton docs
Ben en çok basit, geleceğe, bütün yaz saati/vb (benim datetime.utcnow() damgası girdikleri kabul yoludur gereken tek şey 2012-08-25 10:59:56.511479
), kullanıcının saat dilimini dönüştürün.
Aug 25 - 10:59AM
ve yılı cari yıl değilse, İsterdim
Aug 25 '11 - 10:59AM
bazı kapalı atmak olabilir 2 harici kütüphaneleri gerektirir ... Heroku. Yukarıdaki fonksiyon sadece UTC zamanını döndürür. – chrickso
Ayrıca, bir kullanıcının saat dilimini doğru bir şekilde belirlemenin ve zamanları otomatik olarak ayarlamanın güvenilir bir yol olduğuna dair tüm umudumu kaybettim. twitter'in saat diliminizi ayarlamaya yönelik bir ayarı olduğunu görüyorum, bu yüzden şu şekilde olmalıdır: kullanıcının tercihini saklayın ve bunu dönüşümler için kullanın. – chrickso