Как запустить задачу Django в определенную дату в поле моделиPython

Программы на Python
Ответить
Anonymous
 Как запустить задачу Django в определенную дату в поле модели

Сообщение Anonymous »

У меня есть модель, содержащая следующее поле

Код: Выделить всё

class EventConfig(models.Model):
end_date = models.DateTimeField(blank=True, null=True)
У меня установлен сельдерей, который периодически отправляет электронные письма и запускает другие задачи через заданные промежутки времени, например, каждый час или в 12:00. Однако, если я хочу отправить электронное письмо именно тогда, когда будет достигнута «end_date», как лучше всего это сделать? Я понимаю, что мог бы настроить расписание Celery на запуск каждую минуту для проверки даты, но постоянное выполнение пакетного задания каждые 60 секунд — лучший подход, или у него будут недостатки?
Есть ли например, способ настроить расписание crontab для чтения из списка значений, чтобы я мог сделать что-то вроде schedule_list = EventConfig.objects.all().values_list(end_date, Flat=True) или schedule_list.append(self.end_date) всякий раз, когда сохраняется экземпляр модели, и заставляйте Celery читать из 'schedule_list', чтобы пакетные задания запускались только в нужное время. ?
Или есть лучший способ сделать это с сельдереем или без него?

Подробнее здесь: https://stackoverflow.com/questions/792 ... odel-field
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»