Пагинация не получает предыдущий курсор движка приложения Google в php - PullRequest
1 голос
/ 26 марта 2020

Привет, я реализовал нумерацию страниц в google app engine

с этим кодом

https://github.com/GoogleCloudPlatform/php-docs-samples/blob/master/datastore/api/src/functions/concepts.php

function cursor_paging(DatastoreClient $datastore, $pageSize, $pageCursor = '')
{
    $query = $datastore->query()
        ->kind('Task')
        ->limit($pageSize)
        ->start($pageCursor);
    $result = $datastore->runQuery($query);
    $nextPageCursor = '';
    $entities = [];
    /* @var Entity $entity */
    foreach ($result as $entity) {
        $nextPageCursor = $entity->cursor();
        $entities[] = $entity;
    }
    return array(
        'nextPageCursor' => $nextPageCursor,
        'entities' => $entities
    );
}

получил следующий Курсор, но сделал не получить предыдущий курсор формы

1 Ответ

0 голосов
/ 26 марта 2020

Действительно, работа с предыдущим курсором является проблемой - даже в других языках это кажется более серьезной проблемой при разбивке на страницы данных. В inte rnet также нет большого количества данных или статей о том, как этого достичь.

Я постараюсь объяснить как можно больше, я полагаю, вам доступны возможности .

  1. Согласно этому другому вопросу сообщества здесь , вы можете создать новый курсор с информацией на предыдущей странице, чтобы использовать его для разбивки на страницы. Это означает, что теперь у вас будет три курсора: $pageCursor, $nextPageCursor и $previousPageCursor. Используя подобное, вы сможете сохранить фактические данные, прежде чем устанавливать их для следующей страницы.
  2. Кроме того, существует обратный метод в PHP, который может помочь Вы, в случае, если вы хотите посчитать, сколько страниц будет в вашем приложении, и поместить его назад в предыдущем курсоре. Таким образом, у вас будет обратный порядок, который будет использоваться и в вашей нумерации страниц - я все еще верю, что лучшим вариантом будет дать попытку в первом варианте.

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

Дайте мне знать, помогла ли вам эта информация!

...