Nei*_*eil 0 python celery django-celery celerybeat
将芹菜文档描述了如何通过位置参数,以您的节拍计划任务列表或元组.
我有一个任务,只需一个参数,一个整数列表:
@shared_task
def schedule_by_ids(ids):
...
Run Code Online (Sandbox Code Playgroud)
我的celerybeat时间表如下:
CELERYBEAT_SCHEDULE = {
'schedule_by_ids': {
'task': 'myproj.app.tasks.schedule_by_ids',
'schedule': crontab(minute='*/10', hour='8-21'),
'args': ([1,]),
},
}
Run Code Online (Sandbox Code Playgroud)
我的任务失败,"int不可迭代" TypeError.根据我的显示器(芹菜花),args传递为[1].
当我将args作为列表时,例如[[1]],arg显示在监视器中,[[1]]并且它工作正常.
我的问题是:当它是一个元组时,它是如何通过args的?为什么?
([1,])
Run Code Online (Sandbox Code Playgroud)
那不是一个元组.这只是[1,]在分组括号中.如果你想要一个1元素的元组,你需要像这样放一个逗号,以区别于括号表达式:
([1,],)
Run Code Online (Sandbox Code Playgroud)
我怀疑你可能错放了逗号,你打算这样做:
([1],)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1449 次 |
| 最近记录: |