получение данных разбивки на страницы по определенному номеру страницы

#laravel #laravel-pagination

#laravel #laravel-разбивка на страницы

Вопрос:

Я хочу получать данные по номеру страницы, в обычном режиме, когда мы используем этот код

 $jobs = Jobs::paginate(10);
  

laravel получает данные с помощью параметра GET «страница», определенного в URL,
если наш URL будетhttp://www.example.com/job?page=2
laravel возвращает данные страницы 2
Я хочу сделать это без использования параметра страницы в URL

Я хочу, чтобы вы представили мне что-то вроде этого

 $jobs = Jobs::paginate(10,[
'page'=>2
]);
  

Ответ №1:

Laravel paginator автоматически проверяет значение страницы в строке запроса и использует его для разбивки результатов на страницы. В результате также автоматически генерируются следующие и предыдущие ссылки, которые помогут вам добавлять их напрямую

Метод разбивки на страницы по умолчанию принимает следующие параметры.

 public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null);
  

итак, вы используете вот так

 $jobs = Jobs::paginate(5, ['*'], 'page', $pageNumber);
  

Соглашение по умолчанию

 example.com/job?page=2 
example.com/job?page=3
  

Также, если вы используете $jobs->links() для создания кнопки навигации

Ответ №2:

Определение для paginate метода является

 public function paginate($perPage = null, $columns = ['*'], $pageName = 'page', $page = null)
    {
.......
.......
.......
}
  

Таким образом, вы можете легко изменить его в соответствии с вашими удобными

 $jobs = Jobs::paginate(10,['*'],'page',2);
  

Для получения более подробной информации вы можете проверить Laravel Api

Комментарии:

1. @MahdiClash: Пожалуйста, примите ответ Сетху, он чем-то похож, но он ответил за 20 секунд до моего ответа. Его ответ заслуживает большего, чем мой ответ.