У меня в настоящее время есть этот код на моем Blade:
@if ($employees->count() > 0)
<table class="table table-bordered table-responsive">
<thead>
<th>Employee</th>
<!-- Format of date_of_shift field: format('Y-m-d') -->
<th>{{ $day1 }}<br />{{ $day1_day }}</th>
<th>{{ $day2 }}<br />{{ $day2_day }}</th>
<th>{{ $day3 }}<br />{{ $day3_day }}</th>
<th>{{ $day4 }}<br />{{ $day4_day }}</th>
<th>{{ $day5 }}<br />{{ $day5_day }}</th>
<th>{{ $day6 }}<br />{{ $day6_day }}</th>
<th>{{ $day7 }}<br />{{ $day7_day }}</th>
</thead>
<tbody>
@foreach ($employees as $employee)
<tr>
@if (!$employee->user->last_name)
<td>{{ $employee->user->first_name }} {{ $employee->user->maiden_name }} </td>
@else
<td>{{ $employee->user->last_name }}, {{ $employee->user->first_name }} {{ $employee->user->maiden_name }} </td>
@endif
@for ($sched = 0; $sched < 7; $sched++)
@if ($employee->schedule->count() > 0)
<td>{{ $employee->schedule->firstWhere('date_of_shift', '=', \Carbon\Carbon::today()->addDays($sched)->format('Y-m-d') ) }}</td>
@endif
@endfor
</tr>
@endforeach
</tbody>
</table>
@elseif ($employees->count() == 0 && $user->is_staff == 'True')
<p>No employees found. <a href="{{ route('employees.create') }}">Wanna create one now?</a></p>
@elseif ($employees->count() == 0 && $user->is_staff == 'False')
<p>No employees found.</p>
@endif
Контроллер
$from = date('2020-03-16');
$to = date('2020-03-22');
$employees = Employee::join('users', 'users.id', 'employees.user_id')->where('employees.is_active', 'True')->orderBy('users.last_name', 'asc')->paginate(6);
$schedules = Schedule::whereBetween('date_of_shift', [$from, $to])->groupBy('date_of_shift', 'employee_id')->orderBy('date_of_shift', 'asc')->distinct()->get();
Мои строки td выводят что-то вроде
{"id":1,"user_id":4,"employee_id":4,"time_of_shift":"6:00 AM - 5:00 PM","date_of_shift":"2020-03-20","created_at":"2020-03-17 02:20:12","updated_at":"2020-03-17 02:20:12"}
Я хотел получить поле time_of_shift и отобразить его на виде. Я пытался использовать
<td>{{ $employee->schedule->firstWhere('date_of_shift', '=', \Carbon\Carbon::today()->addDays($sched)->format('Y-m-d') )->first()->time_of_shift }}</td>
Но это просто дает мне ошибку. Как мне это сделать? Или есть другой способ сделать это вокруг?