Как определить, когда DataTimeField моего объекта Django достигает текущего времени
Я использую Django 1.5.5.
Скажем, у меня есть объект как таковой:
class Encounter(model.Models):
date = models.DateTimeField(blank=True, null=True)
Как я могу определить, когда данный Encounter
достигло текущего времени? Я не понимаю, как сигналы могут помочь мне.
2 ответа
Вы не можете обнаружить это, используя только Джанго.
Вам нужен какой-то планировщик, который будет проверять каждый Encounter
s дату (например, с помощью соответствующего фильтра запроса) и выполнить необходимые действия.
Это может быть простой скрипт cron. Вы можете написать это как команду управления django. Например, cron должен звонить каждые 5 минут.
Или вы можете использовать сельдерей. С его помощью вы можете видеть статус работника от администратора и делать некоторые другие вещи.
Что вы могли бы сделать, это использовать сельдерей. Когда вы сохраняете объект Encounter
затем он попадет в очередь задач и будет выполнен только после достижения текущего времени.
Однако есть одно предупреждение, которое может быть выполнено немного позже, в зависимости от того, насколько заняты сельдерея.