這似乎很愚蠢,但我有幾個小時和幾個小時後很難保存我的dateTime在分貝。我在Python中很新,並不是每天都在操縱日期時間。 我有一個小時的差異,當我保存我的價值。所以,現在18小時爲17H(抱歉,我的英語)Django:DateTime不好,當保存在我的數據庫
我的模式是這樣的:
class Event(models.Model):
title = models.CharField(max_length=245)
description = models.TextField(max_length=750, null=True, blank=True)
start = models.DateTimeField()
end = models.DateTimeField()
created_at = models.DateTimeField(editable=False)
updated_at = models.DateTimeField(editable=False)
slug = AutoSlugField(populate_from='title', unique=True, editable=False)
nb_participant = models.PositiveSmallIntegerField(default=1)
price = models.PositiveSmallIntegerField(default=0)
user = models.ForeignKey(User, editable=False, related_name='author')
address = models.ForeignKey('Address', editable=False, related_name='events')
participants = models.ManyToManyField(User, related_name='participants', blank=True)
class Meta:
db_table = 'event'
def save(self, *args, **kwargs):
if not self.pk:
self.created_at = timezone.localtime(timezone.now())
print self.created_at
self.updated_at = timezone.localtime(timezone.now())
super(Event, self).save(*args, **kwargs)
正如你看到的,我有4個領域與日期時間。 2實際上是在模型創建時自動保存。
我用timezone.localtime(timezone.now())代替timezone.now()解決probleme。我發現在頁面底部有enter link description here。但他們說在大多數情況下使用timezone.now()。所以我不知道爲什麼我有一個小時的差異。
我有兩個其他領域是從我的角度前端發送到我的API(使用Django休息框架) 我把一個截圖。我發送的第一個對象是angular.As你看到日期格式良好。 的第二個目的是從我的API的響應,我已經失去了一個小時(所以GMT +1)
爲什麼?我完全塊,所以如果有人有一個解決方案,我會很高興:)
我的settings.py:
LANGUAGE_CODE = 'fr-fr'
TIME_ZONE = 'Europe/Paris'
USE_L10N = True
USE_TZ = True
感謝。
Thxs和抱歉,這麼晚回覆。這似乎是我用我的MySQL後端時,我使用False。我現在沒有時間來調查這一點。但是在閱讀完一些內容後,我決定繼續使用Timezone,似乎它是更好的解決方案,並且在模板中顯示的值很好。 – Epok