GAE: необходимо ли вызывать fetch для запроса, прежде чем получить его курсор? - PullRequest
1 голос
/ 12 июля 2010

Когда выполняется следующий код:

    q = MyKind.all()
    taskqueue.add(url="/admin/build", params={'cursor': q.cursor()})

Я получаю:

AssertionError: No cursor available.

Почему это происходит? Мне нужно fetch что-то сначала? (Я бы предпочел этого не делать; код чище, просто чтобы получить запрос и передать его.)

Я использую Python в Google App Engine 1.3.5.

1 Ответ

3 голосов
/ 12 июля 2010

Да, курсор доступен только если вы что-то получили; нет курсора для первого результата в запросе.

В качестве обходного пути вы можете обернуть вызов курсора () в попытку / исключение и передать None для следующей задачи, если курсор недоступен.

...