Reputation: 13
how to display the following rows and columns in a foreach? here's my code
public function index()
{
$users = User::with('absen')->get();
$period = CarbonPeriod::create('2020-11-25','2020-11-30');
return view('absen.index',compact('users','period'));
}
--controller--
<div class="box-body">
<table class="table table-bordered">
<thead>
<tr>
<th>tanggal</th>
<th>nama</th>
<th>masuk</th>
<th>keluar</th>
</tr>
</thead>
<tbody>
@foreach($period as $date)
@foreach ($users as $user)
<tr>
<td>{{$date->format('Y-m-d')}}</td>
<td>{{ $user->nama}}</td>
@foreach ($user->absen as $abse)
@if ($abse->created_at->format('Y-m-d') == $date->format('Y-m-d'))
<td>{{$abse->masuk}}</td>
<td>{{$abse->keluar}}</td>
@endif
@endforeach
</tr>
@endforeach
@endforeach
</tbody>
</table>
</div>
--blade--
The following results are missing columns and rows enter image description here
Upvotes: 1
Views: 67
Reputation: 332
try this on blade
@forelse ($user->absen as $abse)
@if ($abse->created_at->format('Y-m-d') == $date->format('Y-m-d'))
<td>{{$abse->masuk}}</td>
<td>{{$abse->keluar}}</td>
@endif
@empty
<td></td>
<td></td>
@endforelse
Upvotes: 1