gpt4 book ai didi

python - celerybeat 如何通过调度程序将参数传递给函数?

转载 作者:太空宇宙 更新时间:2023-11-03 14:40:30 26 4
gpt4 key购买 nike

我无法通过 celerybeat 计划将参数传递给我的函数。搜索后,看起来我应该能够使用 args 命令传递它们,但我收到了如下错误。谁能指出我正确的方向?

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,),
# ...

关于python - celerybeat 如何通过调度程序将参数传递给函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46585647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com