Изучаю Laravel. Наткнулся на метод whereValid, который используется в этом коде:
/**
* Get comments paginate.
*
* @param int $nbrPages
* @param array $parameters
* @return \Illuminate\Contracts\Pagination\LengthAwarePaginator
*/
public function getAll($nbrPages, $parameters)
{
return Comment::with ([
'ingoing',
'user',
'post' => function ($query) { $query->withCount('comments'); }
])
->latest()
->when ($parameters['new'], function ($query) {
$query->has ('ingoing');
})->when ($parameters['valid'], function ($query) {
$query->whereHas('user', function ($query) {
$query->whereValid(true);
});
})->paginate($nbrPages);
}
Не понимаю, какую задачу он выполняет? Не могу нигде найти хотя бы слово о нём. Буду благодарен за любое разъяснение.
Это "фишка" Laravel такая. В название метода включать имя переменной с большой буквы. Т.е:
$query->whereValid(true);
означает
$query->where('valid', true);
Если не секрет, какой репозиторий рассматриваете? А так, судя по всему в модели User (если точнее, то у Модели Comment есть связанная модель, отношением user(), отсюда можно предположить и название модели) есть метод
function scopeWhereValid(){
...
}
Именно он вызывается в данном случае.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как написать такой цикл, чтоб он заменял у строки последний элемент на 1? То есть, к примеру мы имеем переменную $url = 'url,com/films?page=' В конце этой...
В БД есть болеее 5 000 000 записейИнформации в них не много - фильтрация идёт по одному полю, которое является индексом