Membuat model sederhana dengan Laravel

Dalam Laravel, model adalah representasi dari tabel dalam basis data Anda. Model digunakan untuk mengakses dan mengelola data dalam tabel tersebut.

Untuk membuat model menggunakan Artisan, Anda dapat menggunakan perintah make:model. Dalam hal ini, mari kita asumsikan Anda ingin membuat model untuk tabel products. Berikut adalah langkah-langkahnya:

Langkah 1: Membuat Model menggunakan Artisan

Buka terminal atau command prompt, dan jalankan perintah berikut untuk membuat model Product:

php artisan make:model Product

Perintah ini akan membuat file model baru dengan nama Product.php di dalam direktori app Anda.

Langkah 2: Edit Model Product.php

Setelah membuat model, buka file Product.php yang ada di dalam direktori app dan konfigurasikan modelnya seperti berikut:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Product extends Model
{
    use HasFactory;
    protected $table = 'products'; // Menyatakan nama tabel yang terkait dengan model ini
    protected $fillable = ['name', 'price', 'stock']; // Kolom-kolom yang dapat diisi (fillable) oleh pengguna
}

Penjelasan:

  1. Namespace: Model ini berada di namespace App, yang umumnya sesuai dengan struktur direktori default dalam aplikasi Laravel.

  2. Extends Model: Model ini meng-extend kelas Illuminate\Database\Eloquent\Model. Dengan meng-extend model ini, Anda mendapatkan keuntungan dari berbagai fitur ORM (Object-Relational Mapping) yang dimiliki oleh Laravel.

  3. Tabel Terkait: Properti $table digunakan untuk menentukan nama tabel yang terkait dengan model ini. Dalam kasus ini, model Product terkait dengan tabel products.

  4. Kolom yang Dapat Diisi (Fillable): Properti $fillable adalah array yang berisi nama kolom-kolom yang diizinkan untuk diisi oleh pengguna. Ini adalah langkah keamanan untuk memastikan bahwa hanya kolom-kolom yang diinginkan yang dapat diisi oleh input pengguna. Dalam contoh ini, model Product memungkinkan pengisian kolom name, price, dan stock.

  5. Hubungan Model (Opsional): Anda dapat mendefinisikan hubungan dengan model lain di dalam model. Contoh relasi one-to-many dan metode logika bisnis tambahan juga dapat didefinisikan di dalam model ini.

Dengan membuat model ini, Anda sekarang dapat menggunakan Eloquent untuk berinteraksi dengan tabel products di basis data Anda. Model ini dapat digunakan untuk melakukan berbagai operasi seperti membuat, membaca, memperbarui, dan menghapus data dari tabel products.

Di bab berikutnya akan belajar cara membuat Seeder sederhana agar bisa mengisi data dari tabel.

Last updated