2016-03-09 2 views

ответ

8

Когда вы устанавливаете USE_TZ = True (см. USE_TZ для получения дополнительной информации) в ваших настройках, Django хранит информацию о дате и времени в UTC в базе данных, иначе он будет хранить наивное время даты (время даты без часовой пояс).

По умолчанию settings.py файл создатель: django-admin startproject содержит USE_TZ = True для удобства.

Таким образом, вы должны установить USE_TZ = False в своих настройках, чтобы избежать часового пояса.

ПРИМЕЧАНИЕ: Однако вы не можете отделить часовой пояс только для конкретной области, следуя предложению выше отсоединение часовой пояс из всех баз данных, поэтому мое предположение, что лучше использовать CharField для хранения даты без часового пояса.

Вы можете попытаться переопределить сохранения по умолчанию обработчика и удалить временную зону из DateTimeField до того saving пункта в databaseby определения способа сохранения модели:

def save(self, *args, **kwargs): 
    self.datetime_field = self.datetime_field.replace(tzinfo=None) 
    super(MyModel, self).save(*args, **kwargs) 
    return self 
+0

который по умолчанию, я считаю. – mehmetminanc

+0

@Andriy Я хочу формат даты и времени таким образом '2016-03-09 6: 51: 43.195486' – Sagar

+0

@Andriy Я использую запрос для вставки в таблицу (не используя django ORM), любые функции python будут делать для меня. – Sagar

Смежные вопросы