Eager load relations in Laravel using withWhereHas
When using whereHas in Laravel, it's not uncommon to also eager load the relation using with.
$posts = Post::query() ->with('author') ->whereHas('author', function (Builder $query) { $query->where('name', 'Seb'); }) ->get();
Laravel also has a more succinct method that combines the two: withWhereHas.
$posts = Post::query() ->withWhereHas('author', function (Builder $query) { $query->where('name', 'Seb'); }) ->get();