Come le tue $skills
sembra essere un array, puoi usare l'eloquente whereIn
funzione.
$workers = Worker::whereHas('skills', function (Builder $query) use ($skills) {
$query->whereIn('name', $skills);
})->get();
Aggiorna
Quanto segue dovrebbe farti ottenere una raccolta di Workers
che hanno tutte le Skills
.
$workers = Worker::whereHas('skills');
foreach ($skills as $skill) {
$workers->whereHas('skills', function (Builder $query) use ($skill) {
$query->where('name', $skill);
})->get();
}
$workers->get();