Laravel Handling Error
Yang saya ketahui, ada 2 cara dalam menghandle error di laravel
1. Proses Input (validate)
- berikut contoh validasi input
$request->validate([
'tanggal' => 'required|date',
'status' => 'required',
'tujuan' => 'required',
'desc' => 'required'
]);
- Error akan di direturn ke blade sesuai dengan validator
2. Error Proses (controller)
- Handle Error menggunakan try catch berikut struktur nya
DB::beginTransaction();
try {
DB::insert(...);
DB::insert(...);
DB::insert(...);
DB::commit();
// all good
} catch (\Exception $e) {
DB::rollback();
// something went wrong
}
try {
DB::insert(...);
DB::insert(...);
DB::insert(...);
DB::commit();
// all good
} catch (\Exception $e) {
DB::rollback();
// something went wrong
}
- pada saat menangkap exception berikut cara ngereturn nya
$validator[] = ['error' => 'Error',
'reason' => 'Kesalahan penginputan'];
return \Redirect::back()->withErrors($validator);
Menangkap Error dan menampilkan dalam "Alert"
@if($errors->any())
<div class="ml-3 mr-3 mb-5 alert alert-small rounded-s shadow-xl bg-red2-dark" role="alert">
<span><i class="fa fa-times"></i></span>
@foreach($errors->all() as $error)
<strong>{{ $error }}</strong>
@endforeach
<button type="button" class="close color-white opacity-60 font-16" data-dismiss="alert" aria-label="Close">×</button>
</div>
@endif
Kesimpulan :
dalam menghandle error harus di pastikan dikirim nilai errornya dan jika menggunakan javascript cara menghandle nya beda lagi, . . .
Komentar
Posting Komentar