-1

I have a a group instance I want to eager load with pagination:

public function show(Group $group)
{
    $group = $group->with('members);
    return$ group     
}

I want to return group with members paginated.

Don't Panic
  • 13,965
  • 5
  • 32
  • 51
Theodory Faustine
  • 432
  • 2
  • 10
  • 22

2 Answers2

2

Use setRelation() and lazy loading:

public function show(Group $group)
{
    return $group->setRelation('members', $group->members()->paginate(5));
}
Jonas Staudenmeir
  • 24,815
  • 6
  • 63
  • 109
1

You can do that but it's not recommended because using paginate for eager loaded relationships generates two repeated queries

public function show(Group $group)
{
     $group = $group->with(['members' => function($query) {
        $query->paginate(24);
    }]);

     return $group;
}
Md.Sukel Ali
  • 2,987
  • 5
  • 22
  • 34