【问题标题】:Django q update an already scheduled taskDjango q 更新一个已经安排好的任务
【发布时间】: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 是否有一个待定的计划,然后访问它来修改它?

【问题讨论】:

    标签: python django schedule django-q


    【解决方案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()
    

    【讨论】:

      猜你喜欢
      • 2018-08-09
      • 2014-11-05
      • 1970-01-01
      • 2021-04-25
      • 1970-01-01
      • 2022-11-11
      • 2011-08-18
      • 2020-06-15
      • 1970-01-01
      相关资源
      最近更新 更多