#laravel-5 #laravel-pagination
#laravel-5 #laravel-разбивка на страницы
Вопрос:
Я заметил, что эта проблема возникла, когда я хотел сгенерировать разбивку на страницы для метода listStory () внутри контроллера.Когда я исследовал, я обнаружил, что #items пуст, чего не было изначально. Он правильно вычисляет общее количество.
Во время моего расследования я попытался:
$allStoryByTeller = Story::all();
dd($allStoryByTeller);
и он возвращает:
Collection {#344 ▼
#items: array:10 [▼
0 => Story {#345 ▶}
1 => Story {#346 ▶}
2 => Story {#347 ▶}
3 => Story {#348 ▶}
4 => Story {#349 ▶}
5 => Story {#350 ▶}
6 => Story {#351 ▶}
7 => Story {#352 ▶}
8 => Story {#353 ▶}
9 => Story {#354 ▶}
]
}
что должно быть тем, что содержит #items в приведенном ниже выводе:
public function listStory()
{
$allStoryByTeller = Story::with([
'user'
])->paginate($perPageCount = 10);
dd($allStoryByTeller);
...
}
и этот фрагмент выше возвращает:
LengthAwarePaginator {#316 ▼
#total: 9
#lastPage: 1
#items: Collection {#318 ▼
#items: []
}
#perPage: 10
#currentPage: 2
#path: "http://127.0.0.1:8000/v1/stories/list"
#query: []
#fragment: null
#pageName: "page"
onEachSide: 3
#options: array:2 [▶]
}
Я ожидал, что #items будет содержать 9 моделей вместо того, чтобы быть [] пустым, поскольку общее количество вычислено правильно.
Ответ №1:
Я понимаю, что #items не загружался из-за того, что я был на второй странице с клиентом Rest, который я использовал. Я установил количество страниц равным 20, поэтому нахождение на второй странице означает, что все модели были исчерпаны на первой странице.