Google App Engine - Python - 任务队列 - 如何添加任务列表?

Google App Engine - Python - Task Queue - How can i add a list of tasks?

我的代码运行良好:

taskqueue.add(url = MY_URL, params={'id': 42}, queue_name='random-message')

this official document 中说:"Adds a task or list of tasks into this queue."

可是我怎么看不懂。

我已经试过了:

tasks = []
tasks.append(taskqueue.Task(url = MY_URL, params={'id': 42}))
taskqueue.add(tasks, queue_name='random-message')

但它引发了一个我不明白的错误:

'Task payloads must be strings; invalid payload: %r' % payload)

我尝试了许多其他的小变体,但无论如何都不起作用。

您可能遇到了命名冲突,因为 tasks.add() 方法的参数。尝试:

task_list = []
task_list.append(taskqueue.Task(url = MY_URL, params={'id': 42}))
taskqueue.add(tasks=task_list, queue_name='random-message')

或:

taskqueue.add(task_list, queue_name='random-message')

问题是:

taskqueue.add(task)

它不能同时接收一个以上的任务。正确的做法是:

taskqueue.Queue.add(tasks)

我的代码现在可以运行了:

tasks = []
tasks.append(taskqueue.Task(url = MY_URL, params={'id': 42}))
taskqueue.Queue('random-message').add(tasks)