【发布时间】:2022-11-11 11:22:03
【问题描述】:
我想知道是否可以让我的最终用户动态调整定期任务的时间表。
所以沿着这些思路:
# celery.py
def get_schedule():
config = get_user_config() # returns a model object of sorts
return config.frequency_in_seconds
app.conf.beat_schedule = {
'my_periodic_task': {
'task': 'my_periodic_task',
'schedule': get_schedule, # schedule updated based on `get_schedule` function
},
}
这样,如果用户要更改其用户配置设置中的 frequency_in_seconds 字段,它将动态更新节拍时间表。
我的偏好是在 Django Admin 站点之外执行此操作,并且没有任何其他软件包(例如 django-celery-beat)。
任何想法或想法将不胜感激。
谢谢
【问题讨论】:
标签: django celery django-celery django-celery-beat