Автоматическое обновление моделей в зависимости от условий
У меня есть модель
class Session(models.Model):
name = models.CharField(max_length=12)
active = models.BooleanField(default=False)
date = models.DateField()
startTime = models.TimeField()
Активное поле устанавливается на основе даты и времени начала. Например -
Предположим, во время создания объекта, дата указана на завтра, и пусть будет любое время, я хочу знать процесс, а не код, как и что нужно изучить, чтобы сделать этот объект активным в эту конкретную дату и время.
По умолчанию активное поле имеет значение False, или мне следует изменить способ реализации?
Спасибо
Я бы посоветовал использовать DateTimeField
для начальной метки времени, а active
сделать свойством, так:
from django.utils import timezone
class Session(models.Model):
name = models.CharField(max_length=12)
start = models.DateTimeField()
@property
def active(self):
return timezone.now() >= self.start
Таким образом, не хранит поле active
в базе данных, а просто определяет его значение, когда это необходимо.