Rumahweb Journal
banner - belajar laravel bagian 16

Belajar Laravel Bagian 16 – CRUD Tambah Data (Eloquent)

Pada sesi belajar Laravel sebelumnya, kita telah mempelajari CRUD tentang cara menampilkan data dari database menggunakan eloquent. Dalam lanjutan belajar laravel bagian ini, kita akan mempelajari CRUD tambah data ke database menggunakan eloquent. Semakin tidak sabar kan? Yuk langsung saja berikut ini langkah-langkahnya.

Perbedaan Query Builder dan Eloquent

Di Laravel, proses CRUD tambah data dapat dilakukan dengan dua metode yaitu query builder dan eloquent. Metode query builder menggunakan pendekatan yang lebih sederhana dan langsung, sehingga cocok untuk Anda yang ingin kontrol penuh atas query SQL.

Sedangkan eloquent menggunakan pendekatan yang lebih efisien dan berorientasi objek, sehingga memudahkan penambahan data dengan sintaks yang lebih rapi dan terstruktur.

Keduanya sama-sama powerful, namun pemilihan metode bisa disesuaikan dengan preferensi dan kompleksitas project Anda. Berikut adalah contoh sederhana insert query SQL dengan dua metode tersebut:

OperasiQuery BuilderEloquent ORM
InsertDB::table(‘users’)->insert([…])User::create([…])
Contohuse Illuminate\Support\Facades\DB;
DB::table(‘users’)->insert([ ‘name’ =>
‘John Doe’, ’email’ =>
[email protected]’, ‘password’
=> bcrypt(‘password123’) ]);
use App\Models\User;
User::create([ ‘name’ => ‘John Doe’,
’email’ => ‘[email protected]’,
‘password’ => bcrypt(‘password123’) ]);

CRUD Tambah Data dengan Eloquent

Pada pembahasan belajar laravel CRUD tambah data, kami akan memberikan contoh bagaimana cara menambah data karyawan dengan metode eloquent secara sederhana. Berikut langkah-langkahnya:

Step 1. Membuat route tambah data karyawan

Di sebelah kiri atas tampilan utama data karyawan, ada tombol “Tambah Karyawan Baru”.  Saat di klik maka kita harus membuat dulu routenya.

Promo Hosting Murah Rumahweb

tambah data karyawan di Laravel

Silakan tambahkan script berikut di file routes\web.php.

Route::get('/karyawan/tambah', [KaryawanController::class, 'tambah']);

Step 2. Membuat method tambah di controller

Selanjutnya, buat method tambah di file app\Http\Controllers\KaryawanController.php.

// method untuk menampilkan view form tambah karyawan

    public function tambah()
    {
 
        // memanggil view tambah
        return view('karyawan.tambah');
 
    }

Step 3. Buat form tambah data karyawan di view

Lanjut membuat tampilan form tambah data karyawan. Untuk membuatnya, kita lakukan di file resources\views\karyawan\tambah.blade.php.

<!DOCTYPE html>
<html>
<head>
    <title>Tambah Data Karyawan</title>
</head>
<body>
    <h2>Tambah Data Karyawan</h2>


    <!-- Tombol Kembali -->
    <p>
        <a href="/karyawan">Kembali</a>
    </p>


    <!-- Form Tambah Data -->
    <form action="/karyawan/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 karyawan store

Buat Controller karyawan store untuk menangkap inputan dari form tambah karyawan.

// method untuk insert data ke table karyawan
public function store(Request $request)
{
    // insert data ke table karyawan menggunakan Eloquent

    Karyawan::create([
        'karyawan_nama' => $request->nama,
        'karyawan_jabatan' => $request->jabatan,
        'karyawan_umur' => $request->umur,
        'karyawan_alamat' => $request->alamat
    ]);

    // alihkan halaman ke halaman karyawan
    return redirect('/karyawan');
}

Step 5. Mass Asignment

Berhubung menggunakan fungsi create(), maka wajib menambahkan perintah berikut pada model Karyawan.php. 

protected $fillable = ['karyawan_nama','karyawan_jabatan', 'karyawan_umur', 'karyawan_alamat' ];


Mass Assignment pada Laravel digunakan untuk memfilter kolom mana yang bisa diinput. Untuk kolom yang boleh diinput, masukkan dalam  variable $fillable, sedangkan kolom yang tidak boleh diinput maka diletakkan di variabel $guarded.

Step 6. Buat route karyawan

Lanjut membuat route store di routes\web.php. Berikut ini isi filenya.

Route::post('/karyawan/store', [KaryawanController::class, 'store']);

Step 7. 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/karyawan, tak lupa jalankan dulu service Laravelnya dengan perintah:

php artisan serve

Setelah itu, klik tambah karyawan baru kemudian Anda akan diarahkan ke url /tambah atau lengkapnya http://127.0.0.1:8000/karyawan/tambah 

Berikut tampilannya:

tambah karyawan eloquent
proses tambah karyawan eloquent

Dan hasilnya akan tampil seperti data berikut:

hasil tambah data karyawan eloquent - belajar laravel

Sampai tahap ini, proses penambahan data di Laravel menggunakan CRUD cara Eloquent telah berhasil.

Penutup

Dengan menggunakan metode Eloquent, proses tambah data karyawan di Laravel menjadi lebih sederhana, efisien, dan mudah dipahami, sehingga sangat cocok digunakan baik oleh pemula maupun developer berpengalaman. Selain itu, metode Eloquent sangat cocok digunakan untuk proyek aplikasi berskala kecil hingga menengah karena sintaksnya yang sederhana dan mudah dibaca.

Demikian artikel belajar Laravel bagian 16 tentang cara menambah data dengan CRUD menggunakan Eloquent. Pada series belajar Laravel selanjutnya, kami akan membahas tentang cara edit data karyawan di Laravel menggunakan Eloquent. Jangan sampai ketinggalan ya!

Bermanfaatkah Artikel Ini?

Klik bintang 5 untuk rating!

Rating rata-rata 5 / 5. Vote count: 1

Belum ada vote hingga saat ini!

Kami mohon maaf artikel ini kurang berguna untuk Anda!

Mari kita perbaiki artikel ini!

Beri tahu kami bagaimana kami dapat meningkatkan artikel ini?

Cloud Hosting Terbaik Rumahweb

Anggit TS

I'm a Technical Support Specialist at Rumahweb Indonesia with a strong passion for front-end development. Skilled in website creation and experienced in content writing. I blend technical expertise with creativity to craft engaging and functional web experiences!

banner pop up - Pindah Hosting ke Rumahweb