Google App Engine: добавление задачи в очередь из задачи - PullRequest
2 голосов
/ 24 января 2010

Мне нужно отслеживать данные с другого сайта. Поскольку он распространяется на более чем 60 страницах, я собираюсь использовать ежедневное задание cron для добавления задачи в очередь. Затем эта задача должна позаботиться об одной странице и, в зависимости от некоторых проверок, поместить другой экземпляр себя в очередь на следующую страницу.

Теперь просто

taskqueue.add(url='/path/to_self', params=control)

в моем классе webapp.RequestHandler для этой задачи приводит к

"POST /path/to_self HTTP/1.1" 405 -

Есть ли способ заставить это работать или просто невозможно добавить задачи в очередь из задач?

1 Ответ

6 голосов
/ 24 января 2010

Можно добавлять задачи изнутри задач. Я делаю это в своем приложении.

Это очень полезно, когда вы хотите перенести большой набор сущностей: одна задача обрабатывает небольшую порцию сущностей, затем добавляет себя в очередь для обработки остальных, пока миграция не закончится.

Я не уверен, в чем проблема с вашим кодом.

Вы реализовали метод post (self) в своем классе RequestHandler? Задача по умолчанию вызывает метод POST.

...