ИЗМЕНЕНО:
Как я могу установить в поле Django значение по умолчанию для функции, которая оценивается каждый раз, когда создается новый объект модели?
Я хочу сделать что-то вроде следующего, за исключением того, что в этом коде код оценивается один раз и устанавливает по умолчанию ту же дату для каждого созданного объекта модели, а не оценивает код каждый раз, когда создается объект модели:
from datetime import datetime, timedelta
class MyModel(models.Model):
# default to 1 day from now
my_date = models.DateTimeField(default=datetime.now() + timedelta(days=1))
ОРИГИНАЛ:
Я хочу создать значение по умолчанию для параметра функции, чтобы он был динамическим и вызывался и устанавливался каждый раз при вызове функции. Как я могу это сделать? например,
from datetime import datetime
def mydate(date=datetime.now()):
print date
mydate()
mydate() # prints the same thing as the previous call; but I want it to be a newer value
В частности, я хочу сделать это в Django, например,
from datetime import datetime, timedelta
class MyModel(models.Model):
# default to 1 day from now
my_date = models.DateTimeField(default=datetime.now() + timedelta(days=1))