1 2 3 4 5 6 7 8 9 10 11 | from datetime import datetime
class My_Model(models.Model):
date_created = models.DateTimeField()
date_modified = models.DateTimeField()
def save(self):
if self.date_created == None:
self.date_created = datetime.now()
self.date_modified = datetime.now()
super(My_Model, self).save()
|
Comments
defaults might be also set to a callable object (function, method or class) which will be evaluated before saving the model instance. So you can use this instead:
#
It would be easier to use the
auto_nowandauto_now_addarguments to theDateFieldandDateTimeFieldfield types.#
I second stringify. I have been using the auto_now and auto_now_add fields for a while and have had no problems. Are they somehow different to this?
#
They were supposed to be deprecated but since they have made their way into 1.0 and Django is expected to stay backwards compatible for a while auto_now and auto_now_add might stay, I don't know...
#