Как определить, когда DataTimeField моего объекта Django достигает текущего времени

Я использую Django 1.5.5.

Скажем, у меня есть объект как таковой:

class Encounter(model.Models):
    date = models.DateTimeField(blank=True, null=True)

Как я могу определить, когда данный Encounter достигло текущего времени? Я не понимаю, как сигналы могут помочь мне.

2 ответа

Решение

Вы не можете обнаружить это, используя только Джанго.

Вам нужен какой-то планировщик, который будет проверять каждый Encounters дату (например, с помощью соответствующего фильтра запроса) и выполнить необходимые действия.

Это может быть простой скрипт cron. Вы можете написать это как команду управления django. Например, cron должен звонить каждые 5 минут.

Или вы можете использовать сельдерей. С его помощью вы можете видеть статус работника от администратора и делать некоторые другие вещи.

Что вы могли бы сделать, это использовать сельдерей. Когда вы сохраняете объект Encounter затем он попадет в очередь задач и будет выполнен только после достижения текущего времени.

Однако есть одно предупреждение, которое может быть выполнено немного позже, в зависимости от того, насколько заняты сельдерея.

Другие вопросы по тегам