Как получить все имена таблиц из БД и разбить их на страницы - PullRequest
0 голосов
/ 03 июля 2019

Пытался разбить на страницы DB::select('SHOW TABLES')->paginate(1);, но получил ошибку Call to a member function paginate() on array. Как я могу получить все таблицы и разбить их на страницы?

1 Ответ

0 голосов
/ 03 июля 2019

Поскольку вы можете использовать \DB:select для вашего запроса, он ответит массивом, а не коллекцией.Таким образом, вы не можете сделать из него нумерацию страниц.

Вы можете использовать LengthAwarePaginator для этого случая, см. Следующий код:

$sql .= 'SHOW TABLES LIMIT ' . $offset . ', ' . $limit; 

$result = \DB::select(\DB::raw($sql));
$myPaginator = new \Illuminate\Pagination\LengthAwarePaginator($result, $data['count'], $limit, $page, ['path' => action('MyController@index')]);
$data['result'] = $result;
...