收集调度程序运行任务以用于任务类中的运行方法

问题描述

我使用基于CLass的芹菜任务schduler,我的任务每30天从模型运行一次 我想在一个字段中收集执行的时间

我创建如下基本任务:

from datetime import timedelta
from celery.task import PeriodicTask

class WorflowScheduler(PeriodicTask):
    abstract = True
    run_every = None
    query_task_pk  = 1

    def run(self):
        pass

我从模型中读取数据并创建计划插入的参数

class PMscheduler(models.Model):
    jobname = models.CharField(max_length=100,unique=True)
    Days = models.IntegerField(blank=True)
    Hours = models.IntegerField(blank=True,validators=[MinValueValidator(0),MaxValueValidator(23)])
    Minutes = models.IntegerField(blank=True,MaxValueValidator(59)])
    title = models.CharField(max_length=150)
    )

在task.py中,我创建了用于从用户插入的schduler参数:

shedulelist = PMscheduler.objects.all()
for i in shedulelist:
    class CreatePM(WorflowScheduler):
       run_every = timedelta(days=i.Days,hours=i.Hours,minutes=i.Minutes)

       def run(self,**kwargs):
           PMTicket.objects.create(
               title=i.title,tobeimplementtime=i.tobeimplementtime,return title

我需要先实现,因为任务每30天+ 1天执行一次, 我该怎么办

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...