Как правильно использовать DateTimeField в Django с базой данных SQLite?

#django #sqlite #datetime

#django #sqlite #datetime

Вопрос:

У меня проблема с использованием DateTimeField в Django. В модели у меня есть поле

 startTime = models.DateTimeField()
  

И я создал соответствующий столбец в таблице базы данных SQLite

 startTime datetime NOT NULL
  

И это не работает, у меня есть AttributeError . Я знаю, что SQLite не поддерживает тип datetime. Он может хранить дату и время в виде текста, вещественного или целого числа. Существует специальная функция sqlite для работы с датой и временем.
Проблема в том, что я не знаю, как объединить все вместе. Я хочу использовать виджет django по умолчанию для даты и времени, поэтому я объявляю в модели models.DateTimeField() . Но он не может храниться в базе данных. Если я использую models.IntegerField() , это будет хранилище в базе данных, но у меня не будет виджета даты и времени.

Ответ №1:

Я обнаружил ошибку в своей базе данных. Я создал столбец startTime не с помощью manage.py syncdb , а из командной строки. И в этот момент я храню в нем неверные данные. Я удалил эти данные из таблицы, и проблема решена.