我尝试使用这个solution但没有成功。我怎样才能指定一个月的哪一天执行任务?我的解决办法我如何安排在每月的特定日期运行的芹菜任务?
class DayOfMonth(schedule):
def __init__(self, day=1):
self.day = day
def is_due(self, last_run_at):
now = datetime.datetime.now()
if now.month != last_run_at.month and now.day == self.day:
return True, 3000
return False, 3000
def __eq__(self, other):
if isinstance(other, DayOfMonth):
return self.day == other.day and self.month == other.month
return False
我试着涂时用Django的芹菜运行它,但我仍然收到错误未指定run_every的。
编辑1:
我跑我的任务添加:
"my_task": {
"task": "util.tasks.CeleryManagementCommand",
"schedule": DayOfMonth(day=4),
"args": ('my_task',),
},
到CELERYBEAT_SHEDULE
字典
编辑2:
当我在初始化指定run_every - >self.run_every = None
我会收到一个错误,即无类型对象没有属性total_seconds
你为什么不这样做通过cron工作? – Ahsan 2012-04-06 07:47:15
你可以显示用于创建任务的代码吗? – 2012-04-06 08:39:01
因为我必须使用芹菜这 – szaman 2012-04-12 11:24:25