Django DateTimeField говорит: «Вы опережаете время сервера на 5,5 часов». - PullRequest
0 голосов
/ 29 декабря 2018

В одной из моих моделей я храню time_stamp = models.DateTimeField(default=timezone.now)

Но когда я сохраняю модель, она говорит You are 5.5 hours ahead of server time. например, локальное время в моей машине равно 13:02, но после сохранения то, что сохраняется в дБэто 7:16

Я получил один связанный здесь , но у него нет удовлетворительного ответа ...

models.py

class Comment(models.Model):
    time_stamp = models.DateTimeField(default=timezone.now)

    def save(self, *args, **kwargs):
        ''' On save, update timestamps '''
        if not self.id:
            self.time_stamp = timezone.now()
        return super(Comment, self).save(*args, **kwargs)

Ответы [ 3 ]

0 голосов
/ 29 декабря 2018

Поскольку вы на 5,5 часа опережаете серверное время, я полагаю, вы находитесь в Индии.
Так что поместите соответствующий часовой пояс в settings.py

TIME_ZONE = 'Asia / Kolkata'

Если где-то еще, установите соответственно

0 голосов
/ 17 августа 2019

Вам нужно изменить настройки часового пояса на вашем ПК и обновить.Это единственный выход.Я просто исправил это через себя.

0 голосов
/ 29 декабря 2018

В вашем settings.py установите TIME_ZONE = 'UTC' и установите время на вашей машине.

...