$provider
ist optional, ist es richtig, whereHas
in diesem Szenario zu verwenden, auch wenn ich bereits with()
Eager Loading verwendet habe?Wo ist der richtige Weg?
public function findByStatus($status, $provider = null)
{
$result = $this->hosts->with('logins')->where('status', $status);
if ($provider) {
$result->whereHas('logins', function ($query) use ($provider) {
$query->where('provider', $provider);
});
}
return $result->get();
}
Es hängt davon ab, was Sie erreichen möchten. –