1. Buka file FormController di bagian edit()
kemudian buatkan method tersebut
public function edit($id)
{
$siswa = Siswa::find($id);
return view('edit', compact('siswa'));
}
2. Buat file edit.php di dalam folder resources/views kemudian isikan seperti dibawah.
@extends('layout')
@section('content')
<h1 style="text-align: center">Update Data</h1>
@if(session()->has('message'))
<p>{{ session()->get('message') }}</p>
@endif
<form action="{{ route('form.update', $siswa->id) }}" method="POST">
<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="hidden" name="_method" value="put">
<div class="group">
<label for="nis">NIS</label>
<input type="number" id="nis" name="nis" value="{{ $siswa->nis }}">
@if($errors->has('nis'))
<small class="error">{{ $errors->first('nis') }}</small>
@endif
</div>
<div class="group">
<label for="nama">Nama</label>
<input type="text" id="name" name="nama" value="{{ $siswa->nama }}">
@if($errors->has('nama'))
<small class="error">{{ $errors->first('nama') }}</small>
@endif
</div>
<div class="group">
<a href="{{ route('form.index') }}">Batal</a>
<button class="save">Simpan</button>
</div>
</form>
@endsection
3. Update method update()
yang ada difile FormController kemudian ubah menjadi seperti ini :
public function update(Request $request, $id)
{
$request->validate([
'nis' => 'required|numeric|digits_between:1,50|unique:siswas,nis,'. $id .',id',
'nama' => 'required|string|min:1|max:100'
]);
$siswa = Siswa::find($id);
$siswa->nis = $request->nis;
$siswa->nama = $request->nama;
if($siswa->save()) {
return redirect()->route('form.index')->with('message', 'Berhasil update data siswa');
} else {
return redirect()->back()->with('message', 'Gagal update data siswa');
}
}
Setelah itu jika ingin mengubah data siswa, klik Edit kemudian isikan data yang ingin update tersebut. Jika berhasil maka anda akan diarahkan ke halaman index dengan pesan Berhasil update data siswa.