Laravel Carbon利用した勤怠編集機能について
Q&A
解決したいこと
clock_in、clock_outで出退勤処理された情報を管理者権限で編集する機能を追加しましたが、編集し、更新すると、以下のようなエラーが表示されます。
解消法を教えてください。
発生している問題・エラー
The clock in field must match the format Y-m-d TH:i.
The clock out field must match the format Y-m-d TH:i.
#コントローラー
public function edit(Attendance $attendance)
{
return view('attendances.edit', compact('attendance'));
}
public function update(Request $request, Attendance $attendance)
{
$request->validate([
'clock_in' => 'required|date_format:Y-m-d TH:i',
'clock_out' => 'nullable|date_format:Y-m-d TH:i|after:clock_in',
]);
$attendance->update($request->validated());
return redirect()->route('attendances.index')->with('success', '勤怠が更新されました');
}
#Views
<form action="{{ route('attendances.update', $attendance->id) }}" method="POST">
@csrf
@method('PUT')
<!-- 出勤時刻 -->
<div class="mb-3">
<label for="clock_in" class="form-label">出勤時刻</label>
<input type="datetime-local" name="clock_in" id="clock_in" class="form-control" value="{{ \Carbon\Carbon::parse($attendance->clock_in)->format('Y-m-d\TH:i') }}" required>
</div>
<!-- 退勤時刻 -->
<div class="mb-3">
<label for="clock_out" class="form-label">退勤時刻</label>
<input type="datetime-local" name="clock_out" id="clock_out" class="form-control" value="{{ \Carbon\Carbon::parse($attendance->clock_out)->format('Y-m-d\TH:i') }}" required>
</div>
<button type="submit" class="btn btn-primary">更新</button>
</form>
</div>
自分で試したこと
バリデーションとあわせるようにViewsも変更しましたが、変化なく、一旦最初の状態に戻しています。
0