Я хочу разбить пользовательскую статическую функцию на страницы.
При использовании Eloquent работает так People::paginate(5);
и разбивает на страницы результаты.
Мне нужно сделать то же самое для этой статической функции People::getOwners();
В зависимости от того, что происходит внутри getOwners()
Вы можете превратить его в область запроса. На ваше People
модель, добавьте функцию:
public function scopeGetOwners($query) {
// $query->where(...);
// $query->orderBy(...);
// etc.
$return $query;
}
Сейчас, getOwners()
обрабатывается как любой другой модификатор области запроса (например, где, orderBy и т. д.):
People::getOwners()->paginate(5);
Просто выполните запрос и разбивку на страницы в функции, например так:
public function getOwners() {
return self::query()->paginate(5);
}