Laravel paginate () для пользовательских статических функций

Я хочу разбить пользовательскую статическую функцию на страницы.

При использовании Eloquent работает так People::paginate(5); и разбивает на страницы результаты.

Мне нужно сделать то же самое для этой статической функции People::getOwners();

0

Решение

В зависимости от того, что происходит внутри getOwners()Вы можете превратить его в область запроса. На ваше People модель, добавьте функцию:

public function scopeGetOwners($query) {
// $query->where(...);
// $query->orderBy(...);
// etc.

$return $query;
}

Сейчас, getOwners() обрабатывается как любой другой модификатор области запроса (например, где, orderBy и т. д.):

People::getOwners()->paginate(5);
1

Другие решения

Просто выполните запрос и разбивку на страницы в функции, например так:

public function getOwners() {
return self::query()->paginate(5);
}
2

По вопросам рекламы [email protected]