Редакция:
Как установить поле 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))
ORIGINAL:
Я хочу создать значение по умолчанию для параметра функции, чтобы он был динамическим и вызывался и устанавливался каждый раз при вызове функции. Как я могу это сделать? например.
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))