0

Название может быть неточным, поэтому позвольте мне точно описать, что мне нужно сделать: У меня есть база данных людей. Сначала мне нужно сначала отобразить их для пользователей. Imaging это приложение Android с ListView (или представить себе сайт, независимо от того, что помогает). Поэтому для первого вызова я посылаю 50 пунктов вызывающему. Когда свиток звонит, я хочу отправить еще 50; и так далее. Поэтому мой метод ниже принимает параметр int index. Но я не знаю, где это выразить. Естественно, я хочу использовать startAt, но этот метод ожидает курсора. Вот мой код нижеКак использовать курсор с Objectify

public static Collection<Person> getYoungestKids(int index){ 
     return OfyService.ofy().load().type(Person.class).order("-dob").limit(50).list(); 
} 

ответ

1

Ознакомьтесь с этим примером для работы с курсорами. Использование Offsets считается очень дорогостоящим. Вы всегда должны использовать курсоры для разбивки на страницы.

https://github.com/objectify/objectify/wiki/Queries#cursor-example

+0

Спасибо за ссылку. +1. Не могли бы вы объяснить часть очереди внутри блока 'if (continu)? Я не понимаю, зачем это нужно. Я использую конечную точку Google Cloud: так что мой движок приложения является модулем в проекте Android. –

+0

Не могу я просто вернуть 'cursor.toWebSafeString()'? В отличие от добавления его в очередь? Для чего нужна очередь? и зачем добавлять к нему URL? –

+0

Я думаю, что понял. Я еще не могу проверить. Но я читаю https://rominirani.com/google-cloud-endpoints-tips-5-using-cursor-and-limit-parameters-20d3e8865ac3#.urcm2nwc6 и, похоже, помогает. –

Смежные вопросы