ИЗМЕНИТЬ:
Как я могу установить в поле 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))
get_default_my_date
? 18.10.2018('secret_key', models.CharField(default=core.models.models.getsecretkey, help_text='Hex-encoded secret key to generate totp tokens.', max_length=32, unique=True, validators=[django_otp.util.hex_validator])),
и вызывает исключение:AttributeError: module 'django.db.models' has no attribute 'getsecretkey'
. Почему миграция ищетgetsecretkey()
вdjango.db.models
вместоcore.models.models
для миграции? 03.05.2020