Я не могу использовать переменную в функции, где есть - PullRequest
0 голосов
/ 22 марта 2020

Я новичок с laravel. Я не могу использовать $ class _id в функции whereHas. Что мне делать?

public function show($classroom_id)
{
    $classrooms = Group::whereHas('members', function ($query) {
        $query->where([['user_id', '=', Auth::id()], ['classroom_id', $classroom_id]]);
    })->get();
    return response()->json($classrooms);
}

Ответы [ 2 ]

0 голосов
/ 22 марта 2020

Попробуйте использовать use($classroom_id) в функции обратного вызова

public function show($classroom_id)
{
    $classrooms = Group::whereHas('members', function ($query)  use($classroom_id) {
        $query->where([['user_id', '=', Auth::id()], ['classroom_id', $classroom_id]]);
    })->get();
    return response()->json($classrooms);
}
0 голосов
/ 22 марта 2020

См. use (classroom_id)

   $groups = Group::whereHas('natures', function($q) use($classroom_id)
            {
                $q->where('classroom_id', '=', $classroom_id);

            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...