этот код теперь принимает все совпадения. Мне нужно брать только там, где home_team_score иaway_team_score не равны нулю:
$matches = Match::with('score', 'homeTeam', 'awayTeam')->
where('league_id', '=', $league->id)->get();
foreach ($matches as $match) {
$homeTeamScore = $match->score->home_team_score;
$awayTeamScore = $match->score->away_team_score;
Помогите с условием where.
Необходимо whereHas
ограничить запрос, включив в него только те матчи, в которых home_team_score иaway_team_score не равны нулю.
$matches = Match::with('score', 'homeTeam', 'awayTeam')
->whereHas('score', function($query){
$query->whereNotNull('home_team_score')
->whereNotNull('away_team_score');
})
->where('league_id', '=', $league->id)
->get();
вы изучали использование
whereHas
для запроса существования условия отношений? laravel.com/docs/8.x/…