@mr_drinkens89

Как реализовать систему уведомлений?

Всем привет.
У модели Task есть поле notification_time. Юзер ставит дату, когда его "уведомить".
Как вызвать событие, когда текущее время будет равно notification_time?
По сути, чем-то напоминает будильник)
Пока вижу такой вариант:
Запускать celery+redis, и опрашивать все Task'и раз в минуту, и брать те, у которых notification_time=текущее время.
Думаю, есть более рациональные решения, дабы не опрашивать все таски.
Заранее благодарю
  • Вопрос задан
  • 182 просмотра
Пригласить эксперта
Ответы на вопрос 1
ap0stal
@ap0stal
Web-разработчик
А почему из БД нельзя сразу извлекать Task где notification_time <= текущего времени и которых еще не уведомили?

То есть вам нужно еще одно поле – статус уведомления (0 - не уведомили, 1 - уведомили).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы