Интересный затык при работе с моделями в Django

Nov 22, 2009 20:01


К примеру, хочется иметь в объекте модели поле, дата которого будет задаваться при сохранении объекта.

Казалось бы, вот такой код будет логичным:

class MyModel(models.Model): time = models.DateTimeField(default = datetime.now())
Однако,  в приведенном выше примере - все создаваемые объекты будут иметь дату создания в памяти класса MyModel.

Правильным будет указать в качестве значения по-молчанию функцию, которая будет вызываться каждый раз, при сохранении объекта:

class MyModel(models.Model): time = models.DateTimeField(default = datetime.now)
upd:
Как подсказывает товарищ overplumbum, можно добавить в конструктор models.DateTimeField() auto_now=True - http://ff.im/bQyQO
--
Этот, а также другие мои посты по it-тематике вы можете прочитать здесь

python

Previous post Next post
Up