0
我真的很難把握這與時區。我有一個日曆應用程序,像這樣一個模型:不能讓時區datetime對象打印正確的時間
class Events(models.Model):
dtstart = models.DateTimeField('Start')
...
def __unicode__(self):
aware = self.dtstart.replace(tzinfo=timezone.get_current_timezone())
#dt = defaultfilters.date(aware, 'Y-m-d H')
dt = aware.strftime('%Y-%m-%d %H:%M')
return dt
和settings.py包含此:
TIME_ZONE = 'Europe/Stockholm'
USE_TZ = True
如果我使用Django管理界面添加的事件開始約19:00明天,sqlite數據庫將包含此:
$ sqlite3 ~/django_test.db "SELECT dtstart from events_events"
2013-03-04 18:00:00
這似乎是一個utc時間戳給我(我懷疑這是正確的)。當我使用{{event.dtstart|date:"H.i"}}
呈現html時,這一切都很好。它應該顯示19:00。但問題在於Event類的__unicode__
- 方法返回2013-03-04 18:00
。我有,正如你所見,試圖解決這個問題,但我卡住了。我的問題在哪裏?如何使此__unicode__
方法返回2013-03-04 19:00
。我認爲現在是瑞典的夏令時。