Невозможно отсортировать данные в режиме двойного foreach l oop in Laravel - PullRequest
0 голосов
/ 19 января 2020

Я получаю данные User для моделей Subject и Review. В Review соответствующего User есть столбец рейтинга. Я пытаюсь сначала получить самый высокий рейтинг, но не получилось.

Вот мой контроллер:

function guest()
{
    $topTutors = User::where('type', 'tutor')->with('subject')->with('review')->get();     

    return view('welcome', compact('topTutors'));
}
@foreach($topTutor->review as $singleReview)
    <div class="star-rating" data-rating="{{ $singleReview->rating }}"></div>
@endforeach

Вот блейд, где я не смог отсортировать данные. I использовал sortbyDes c, но он не работает:

1 Ответ

0 голосов
/ 19 января 2020

Попробуйте отсортировать пользователей по рейтингу их отзывов:

$topTutors = User::where('type', 'tutor')
    ->with('subject', 'review')
    ->get()
    ->sortbyDesc(function($user) {
        return $user->review->max('rating');
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...