Python celerybeat如何通过调度程序将参数传递给函数?
我无法通过celerybeat时间表将参数传递给函数。搜索后,看起来我应该能够通过args命令传递它们,但是我得到了如下错误。谁能给我指出正确的方向吗Python celerybeat如何通过调度程序将参数传递给函数?,python,celery,celerybeat,Python,Celery,Celerybeat,我无法通过celerybeat时间表将参数传递给函数。搜索后,看起来我应该能够通过args命令传递它们,但是我得到了如下错误。谁能给我指出正确的方向吗 CELERYBEAT_SCHEDULE = { 'maintenance_mail_1_day': { 'task': 'home.tasks.maintenance_mail', 'schedule': crontab(hour='15'), 'args' : (1), },
CELERYBEAT_SCHEDULE = {
'maintenance_mail_1_day': {
'task': 'home.tasks.maintenance_mail',
'schedule': crontab(hour='15'),
'args' : (1),
},
'maintenance_mail_3_day': {
'task': 'home.tasks.maintenance_mail',
'schedule': crontab(hour='15'),
'args' : (3),
},
'maintenance_mail_5_day': {
'task': 'home.tasks.maintenance_mail',
'schedule': crontab(hour='15'),
'args' : (5),
},
'maintenance_mail_7_day': {
'task': 'home.tasks.maintenance_mail',
'schedule': crontab(hour='15'),
'args' : (7),
}
任务,py
@app.task
def maintenance_mail(days):
return send_maintnance_emails(days)
Python中有以下内容:
(1)==1
要使其成为单元组,请添加一个额外的逗号:(1,)
,并在相应的设置中:
# ...
'args' : (1,),
# ...
您会遇到什么错误?Args必须是元组:do
'Args':(1,)
(注意额外的逗号)