Tutorial Laravel CRUD Ajax: Mengelola Data dengan Ajax di Laravel 10

Laravel adalah salah satu framework PHP yang paling populer, menawarkan berbagai fitur canggih untuk membangun aplikasi yang efisien.

Salah satu tantangan pengembangan web adalah memastikan pengalaman pengguna tetap responsif tanpa reload halaman. Di sinilah Ajax menjadi solusi ideal.

Dengan Ajax, operasi CRUD (Create, Read, Update, Delete) dapat dilakukan lebih cepat dan interaktif, sehingga pengalaman pengguna meningkat. 

Artikel ini membahas tutorial lengkap mengimplementasikan CRUD menggunakan Ajax di Laravel 10.

Apa Itu Laravel?

Laravel adalah framework PHP yang dirancang untuk mempermudah pengembangan aplikasi web dengan pendekatan yang elegan dan kaya fitur.

Framework ini dikenal karena kemampuannya untuk menangani tugas-tugas kompleks, seperti routing, manajemen database, dan autentikasi, dengan cara yang sederhana dan terstruktur. 

Salah satu alasan utama Laravel menjadi favorit adalah keberadaan fitur seperti ORM Eloquent yang memungkinkan interaksi dengan database menjadi lebih mudah dan intuitif.

Selain itu, Laravel menyediakan sistem migrasi yang memungkinkan pengembang melacak perubahan pada struktur database, serta mekanisme routing yang fleksibel untuk mengelola URL aplikasi.

Baca Juga: Laravel Adalah: Pengertian, Tools Andalan & Kelebihannya

Persiapan Awal: Install Laravel 

Sebelum menginstal Laravel 10, pastikan bahwa lingkungan pengembangan Anda sudah memenuhi prasyarat berikut:

  • PHP: Versi 8.1 atau lebih baru.
  • Composer: Alat manajemen dependensi PHP.
  • Database: MySQL, PostgreSQL, atau database lainnya yang didukung Laravel.

Untuk menginstal Laravel, Anda bisa menggunakan Composer dengan perintah berikut:

composer create-project –prefer-dist laravel/laravel nama-proyek “^10.0”

Setelah proses instalasi selesai, buka terminal dan jalankan server pengembangan lokal dengan perintah:

php artisan serve

Langkah ini akan membuka aplikasi Laravel Anda di browser melalui URL default.

Baca Juga: Cara Install Laravel Di Windows

Memahami CRUD dalam Laravel (200-250 kata)

CRUD adalah singkatan dari Create, Read, Update, dan Delete, yang merupakan operasi dasar untuk mengelola data dalam aplikasi web.

Laravel menyediakan berbagai alat untuk mempermudah implementasi CRUD, termasuk ORM Eloquent untuk berinteraksi dengan database.

Dengan Eloquent, Anda dapat dengan mudah membuat, membaca, memperbarui, dan menghapus data tanpa harus menulis query SQL secara manual.

Sebagai contoh, berikut adalah operasi CRUD sederhana menggunakan Eloquent:

  • Create: $user = User::create([‘name’ => ‘John Doe’]);
  • Read: $user = User::find(1);
  • Update: $user->update([‘name’ => ‘Jane Doe’]);
  • Delete: $user->delete();

Dengan menggabungkan CRUD dan Ajax, Anda dapat menciptakan aplikasi yang lebih responsif dan interaktif.

Baca Juga: CRUD Operation Pada Laravel

Membuat Tabel dan Migration

Migrasi di Laravel adalah cara yang efisien untuk membuat dan mengelola tabel di database. Untuk memulai, buat file migrasi menggunakan perintah:

php artisan make:migration create_nama_tabel –create=nama_tabel

Dalam file migrasi, Anda dapat mendefinisikan struktur tabel, seperti berikut:

Schema::create(‘nama_tabel’, function (Blueprint $table) {

    $table->id();

    $table->string(‘kolom_nama’);

    $table->timestamps();

});

Tambahkan nilai kolom yang sesuai dengan kebutuhan Anda di method public function up. Setelah selesai, jalankan perintah berikut untuk mengeksekusi migrasi:

php artisan migrate

Langkah ini akan membuat tabel di database Anda sesuai dengan definisi pada file migrasi.

Membuat Route untuk CRUD Ajax 

Rute di Laravel digunakan untuk menghubungkan permintaan dari browser ke controller. Untuk mendefinisikan rute CRUD dengan Ajax, tambahkan kode berikut pada file routes/web.php:

Route::get(‘/data’, [DataController::class, ‘index’]);

Route::post(‘/data’, [DataController::class, ‘store’]);

Route::put(‘/data/{id}’, [DataController::class, ‘update’]);

Route::delete(‘/data/{id}’, [DataController::class, ‘destroy’]);

Rute ini akan menangani permintaan Create, Read, Update, dan Delete yang dikirim melalui Ajax. Jangan lupa untuk menambahkan namespace di bagian atas file Anda jika menggunakan controller yang dilindungi oleh namespace tertentu.

Menggunakan Ajax di Laravel 

Ajax memungkinkan Anda mengirimkan data ke server tanpa perlu reload halaman. Berikut adalah contoh bagaimana Anda dapat menggunakan Ajax untuk operasi CRUD di Laravel:

  • Create Data:

$.ajax({

    url: ‘/data’,

    type: ‘POST’,

    data: {

        name: ‘John Doe’,

        _token: ‘{{ csrf_token() }}’

    },

    success: function(response) {

        console.log(‘Data created:’, response);

    },

    error: function() {

        console.log(‘Request failed’);

    }

});

  • Read Data:

$.ajax({

    url: ‘/data’,

    type: ‘GET’,

    success: function(data) {

        data.forEach(function(item) {

            console.log(`ID: ${item.id}, Name: ${item.name}`);

        });

    },

    error: function() {

        console.log(‘Request failed’);

    }

});

Tambahkan button untuk memicu event pada fungsi Ajax di frontend.

Menangani Data dengan Controller

Controller bertanggung jawab untuk menangani request Ajax dan mengembalikan data ke frontend. Contoh implementasi CRUD di controller adalah sebagai berikut:

  • Create Data:

public function store(Request $request) {

    $data = DataModel::create($request->all());

    return response()->json($data);

}

Tambahkan properti $fillable di model Anda untuk melindungi data yang dapat diisi:

protected $fillable = [‘name’, ’email’];

  • Read Data:

public function index() {

    $data = DataModel::all();

    return response()->json($data);

}

Implementasi Fitur CRUD di Frontend

Gunakan Blade template untuk membuat tampilan tabel di frontend. Kombinasikan dengan jQuery untuk mengirim request Ajax dan menampilkan data di tabel secara real-time.

  • Contoh Tabel:

<table id=”dataTable”>

    <thead>

        <tr>

            <th>ID</th>

            <th>Nama</th>

            <th>Aksi</th>

        </tr>

    </thead>

    <tbody></tbody>

</table>

Tambahkan style menggunakan Bootstrap untuk membuat tabel lebih menarik dan responsif.

  • Menggunakan jQuery:
    $.ajax({
        url: ‘/data’,
        type: ‘GET’,
        success: function(data) {
            data.forEach(function(item) {
                $(‘#dataTable tbody’).append(`<tr><td>${item.id}</td><td>${item.name}</td></tr>`);
            });
        }
    });

Menguji Aplikasi CRUD Ajax

Uji aplikasi Anda dengan memastikan semua operasi CRUD bekerja dengan baik. Gunakan alat seperti postman untuk menguji endpoint API dan cek log di terminal untuk memastikan tidak ada error selama proses berjalan.

Laravel CRUD AJax untuk Meningkatkan User Experience pada Aplikasi Laravel

Menggunakan CRUD Ajax di Laravel 10 tidak hanya membuat aplikasi Anda lebih interaktif, tetapi juga meningkatkan efisiensi pengelolaan data secara real-time.

Dengan pengalaman pengguna yang lebih baik, Anda dapat membangun aplikasi web yang modern dan handal.

Tertarik untuk mendalami pengembangan aplikasi dengan Laravel? Ikuti kursus web developer dari Course Net untuk meningkatkan kemampuan Anda.

Yuk, bergabung dengan Course Net dan mulai perjalanan Anda sebagai pengembang web profesional!

Belajar IT di Course-Net, Sampai bisa!

Masih Ga percaya ? Di Course-Net kamu Belajar Langsung Oleh Coach Praktisi Aktif Berpengalaman

Share: