Я создаю портал отчетов, используя django. В этом портале мне нужно чтобы дать пользователям возможность планировать запуск отчетов на повторяющейся основе. Я изучал django-celery и понимаю, что вы можете использовать perio Декоратор dic_task для планирования повторяющейся задачи, но во всех примерах, которые я видел, информация о расписании cron жестко закодирована в декораторе.
@periodic_task(run_every=crontab(hours=7, minute=30, day_of_week="mon"))
Есть ли способ использовать django-celery для динамического планирования повторяющейся задачи на основе ввода от пользователя?
Например, пользователь использует форму для выбора отчета, который он хочет запустить, предоставляя все параметры, требуемые отчет и расписание, когда они хотят, чтобы отчет запускался. После обработки формы есть ли метод или функция, которые я могу вызвать, чтобы добавить задачу run_report в расписание? Если да, есть ли способ получить все текущие расписания, хранящиеся в базе данных, чтобы их можно было отобразить?