Pada sesi belajar Laravel bagian ke 7, kita telah mempelajari CRUD tentang cara menampilkan data dari database. Dalam lanjutan belajar laravel bagian ke 8 ini, kita akan mempelajari CRUD di Laravel tentang menambah data ke database. Semakin tidak sabar kan? Yuk langsung saja berikut ini langkah-langkahnya.
Membuat CRUD tambah data di Laravel
Dalam lanjutan belajar CRUD Laravel menggunakan Query Builder, kami melakukan sedikit modifikasi pada file \index.blade.php
, agar menampilkan data dengan lebih rapi. Berikut ini tampilannya.
Silakan Anda mengikuti dengan mengganti isi file index.blade.php
yang ada di path resources\views\pegawai\index.blade.php menjadi berikut.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Data Pegawai</title>
</head>
<body>
<h3>Data Pegawai</h3>
<!-- Tombol Tambah Data -->
<p>
<a href="/pegawai/tambah">+ Tambah Pegawai Baru</a>
</p>
<!-- Tabel Data Pegawai -->
<table border="1" cellpadding="6" cellspacing="0" style="margin: 0 auto; width: 80%; text-align: left;">
<thead>
<tr>
<th>ID</th>
<th>Nama</th>
<th>Alamat</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
@foreach($pegawai as $p)
<tr>
<td>{{ $p->pegawai_id }}</td>
<td>{{ $p->pegawai_nama }}</td>
<td>{{ $p->pegawai_alamat }}</td>
<td>
<a href="/pegawai/edit/{{ $p->pegawai_id }}">Edit</a> |
<a href="/pegawai/hapus/{{ $p->pegawai_id }}">Hapus</a>
</td>
</tr>
@endforeach
</tbody>
</table>
</body>
</html>
Baik. Selanjutnya, berikut ini langkah-langkah menambah data pegawai di Laravel.
Step 1. Membuat route tambah data pegawai
Disebelah kiri atas tampilan utama data pegawai, ada tombol “Tambah Pegawai Baru”. Saat di klik maka kita harus membuat dulu routenya. Silakan tambahkan script berikut di file routes\web.php.
Route::get('/pegawai/tambah', [PegawaiController::class, 'tambah']);
Step 2. Membuat method tambah di controller
Selanjutnya buat method tambah di file app\Http\Controllers\PegawaiController.php
// method untuk menampilkan view form tambah pegawai
public function tambah()
{
// memanggil view tambah
return view('pegawai.tambah');
}
Step 3. Buat form tambah data pegawai di view
Lanjut membuat tampilan form tambah data pegawai. Untuk membuatnya, kita lakukan di file resources\views\pegawai\tambah.blade.php
<!DOCTYPE html>
<html>
<head>
<title>Tambah Data Pegawai</title>
</head>
<body>
<h2>Tambah Data Pegawai</h2>
<!-- Tombol Kembali -->
<p>
<a href="/pegawai">Kembali</a>
</p>
<!-- Form Tambah Data -->
<form action="/pegawai/store" method="post">
{{ csrf_field() }}
<table>
<tr>
<td><label for="nama">Nama</label></td>
<td><input type="text" id="nama" name="nama" required="required"></td>
</tr>
<tr>
<td><label for="jabatan">Jabatan</label></td>
<td><input type="text" id="jabatan" name="jabatan" required="required"></td>
</tr>
<tr>
<td><label for="umur">Umur</label></td>
<td><input type="number" id="umur" name="umur" required="required"></td>
</tr>
<tr>
<td><label for="alamat">Alamat</label></td>
<td><textarea id="alamat" name="alamat" required="required"></textarea></td>
</tr>
<tr>
<td colspan="2" style="text-align: right;">
<input type="submit" value="Simpan Data">
</td>
</tr>
</table>
</form>
</body>
</html>
Step 4. Buat Controller pegawai store
Buat Controller pegawai store untuk menangkap inputan dari form tambah pegawai.
// method untuk insert data ke table pegawai
public function store(Request $request)
{
// insert data ke table pegawai
DB::table('pegawai')->insert([
'pegawai_nama' => $request->nama,
'pegawai_jabatan' => $request->jabatan,
'pegawai_umur' => $request->umur,
'pegawai_alamat' => $request->alamat
]);
// alihkan halaman ke halaman pegawai
return redirect('/pegawai');
}
5. Buat route pegawai
Lanjut membuat route store di routes\web.php
. Berikut ini isi filenya.
Route::post('/pegawai/store', [PegawaiController::class, 'store']);
Pengujian CRUD tambah data di Laravel
Langkah terakhir, kita bisa melakukan testing untuk menambah data. Silahkan Akses ke URL http://127.0.0.1:8000/pegawai
, tak lupa jalankan dulu service Laravelnya dengan perintah:
php artisan serve
Setelah itu, klik tambah pegawai baru kmudian Anda akan diarahkan ke url /tambah atau lengkapnya http://127.0.0.1:8000/pegawai/tambah. Berikut tampilannya:
Dan hasilnya akan tampil seperti data berikut:
Sampai tahap ini, proses penambahan data di Laravel menggunakan CRUD telah berhasil.
Demikian artikel belajar Laravel bagian 8 tentang cara menambah data dengan CRUD. Pada series belajar Laravel selanjutnya, kami akan membahas tentang cara edit data pegawai di Laravel menggunakan Query Builder. Semoga bermanfaat.