Model Dasar di CodeIgniter
Penjelasan
Model di CodeIgniter extends CodeIgniter\Model, disimpan di app/Models. Property $table menentukan nama tabel, dan $allowedFields (setara $fillable di Laravel) menentukan kolom mana yang boleh diisi lewat mass assignment lewat method insert()/update().
Contoh Konsep
<?php
namespace App\Models;
use CodeIgniter\Model;
class ProdukModel extends Model
{
protected $table = 'produk';
protected $allowedFields = ['nama', 'harga'];
}
// Pemakaian di controller:
$produkModel = new ProdukModel();
$id = $produkModel->insert(['nama' => 'Kaos', 'harga' => 99000]);
$produk = $produkModel->find(1);
echo $produk['nama']; // array, bukan object seperti Eloquent
Praktikum
Buat model ArtikelModel dengan $table = 'artikel' dan $allowedFields berisi judul dan isi. Buat satu record baru lewat insert(), lalu cari record itu kembali lewat find() dan tampilkan judulnya.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Hasil query Model CodeIgniter default berupa ARRAY asosiatif (mis. $produk['nama']), BEDA dengan Eloquent Laravel yang mengembalikan OBJECT ($produk->nama) — kesalahan umum pemula yang baru pindah dari Laravel ke CodeIgniter adalah lupa perbedaan ini.