Postingan lainnya
Buku Ini Koding!
Baru!
Buku ini akan jadi teman perjalanan kamu belajar sampai dapat kerjaan di dunia programming!
Find data sebelum validasi form request laravel
Saya mau update data menggunakan validasi form request dengan role email unique, semua berjalan normal.
Asumsikan saya punya 3 data dari id 1-3 dengan url:
127.0.0.1:8000/api/user/update/3
Controller:
use App\Http\Requests\Simak\User\Update;
...
public function update(Update $request, $id)
{
try {
// UPDATE DATA
return resp(200, trans('general.message.200'), true);
} catch (\Exception $e) {
// Ambil error
return $e;
}
}
Update FormRequest:
...
public function rules()
{
return [
'user_akses_id' => 'required|numeric',
'nama' => 'required|max:50',
'email' => 'required|email|unique:users,email,' . $this->id,
'password' => 'required',
'foto' => 'nullable|image|max:1024|mimes:jpg,png,jpeg',
'ip' => 'nullable|ip',
'status' => 'required|boolean'
];
}
tapi jika id yang di update tidak ditemukan misal ....../update/4, response nya ke validasi email has been taken, bukan di throw ke modelexception.
Solve nya gimana ya biar return nya data tidak ditemukan bukan validasi terlebih dahulu?
1 Jawaban:
'user_akses_id' => 'required|numeric' -> dihilangkan aja, jadi ngecek id ada atau ndak nya di controller nya, sebelum masuk ke try catch $cek = getData::where('user_akses_id', $request->user_akses_id)->first(); if(!empty($cek)){ echo "ada data": };