This is one possibility:
public function show($id)
{
$child = Child::find($id);
// Define a Closure that will apply grouping to each Collection.
$groupingFunction = function ($act) {
return $act->created_at->toDateString();
};
// Apply grouping on each relation
$groupedActone = $child->actone->groupBy($groupingFunction);
$groupedActtwo = $child->acttwo->groupBy($groupingFunction);
$groupedActthree = $child->actthree->groupBy($groupingFunction);
return view('admin.children.show'(compact('child', 'groupedActone', 'groupedActtwo', 'groupedActthree'));
}
In the view you have each Act grouped by date, so you need nested loops
@foreach ($groupedActone as $date => $actones): ?>
{{ $date }}
@foreach($actones as $actone)
<tr>
<td>{{$actone->category}}</td>
<td>{{$actone->time}}</td>
<td>{{$actone->name}}</td>
<td>{{$actone->rating}}</td>
<td>{{$actone->comment}}</td>
<td>{{$actone->created_at}}</td>
</tr>
@endforeach
@endforeach