Django q 更新一个已经安排好的任务
Posted
技术标签:
【中文标题】Django q 更新一个已经安排好的任务【英文标题】:Django q update an already scheduled task 【发布时间】:2021-02-25 22:31:02 【问题描述】:我正在使用Django-q 在对象中的指定日期安排任务(我们称之为铃)。我可以成功地使用
schedule_obj = schedule(func_name, arg1, arg2, arg3,
schedule_type=Schedule.ONCE,
next_run=bell.date)
当保存日期的 obj bell 有更新时,我想用更新的日期 (bell.date) 修改这个时间表 obj。有没有办法用 args 来检查这个特定的 func_name 是否有一个待定的计划,然后访问它来修改它?
【问题讨论】:
【参考方案1】:因为我在文档中找不到它,所以将其留在这里,但您可以像任何其他 Django 模型一样访问和修改创建的 django-q 计划。
只要您更新 next_run
和您正在使用的计划类型的计划参数,集群工作人员就会使用更新的信息来运行:
from django_q.models import Schedule
existing_schedules = Schedule.objects.filter(func=func_name, args=args)
for schedule in existing_schedules:
schedule.next_run = bell.date
schedule.save()
【讨论】:
以上是关于Django q 更新一个已经安排好的任务的主要内容,如果未能解决你的问题,请参考以下文章
Django celery 定期任务间隔更改未在数据库中更新