Apa Itu Model Codeigniter dan Bagaimana Aturan Membuatnya

Dengan menggunakan framework codeigniter maka ada beberapa hal dasar yang perlu kita ketahui. Salah satunya adalah konsep Model View dan Controller (MVP).

Pada tutorial ini kita fokus membahas tentang model.

Apa Itu Model Codeigniter

Model adalah sebuah file php yang ditempatkan di directory application/models yang digunakan untuk mengambil data atau informasi yang ada di database. Sebagai contoh kita memiliki database akademik. maka kita membuat model yang berisi function untuk melakukan insert, update dan delete terhadap tabel-tabel yang ada di database akademik tersebut.

Dengan demikian maka saat membuat aplikasi menggunakan codeigniter kita menggunakan model untuk menyelesaikan semua hal yang berkaitan dengan pembuatan qurey atau proses DML(Database Manipulation Language).

Contoh :

Function model get data dosen (memanggil tabel dosen).

<?php
class Model_dosen extends CI_Model
{

    public function get_dosen()
    {
        $query = $this->db->get('tbl_dosenn');
        return $query->result();
    }
}

Keterangan

  • Model_dosen adalah nama class dari model dosen.php
  • get_dosen adalah salah satu function pada model dosen.
  • $this->db->get('tbl_dosen) adalah query dalam bentuk query builder sama dengan select * from tbl_dosen jika menggunakan php native.

Aturan Penulisan Model di Codeigniter

Jika kita memiliki model denan nama Model_produk.php. maka class model ditulis sebagai berikut:

class Model_produk extends CI_Model
{
}

Cara Load Model

Model CI dapat di load mengunakan 2 cara yaitu load melalui constructor controller atau melalui autoload codeigniter.

1. Load model di controller melalui constructor

Nama file : Dosen.php
directory : application/controller/Dosen.php

<?php
class Dosen extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        $this->load->model('model_dosen');
    }
}

2. Melalui Autoload

Nama file : autoload.php
directory : application/config/autoload.php

Cari scirpt ini pada file autolaod

$autoload['model'] = array();

ubah menjadi :

$autoload['model'] = array('model_dosen');

Dengan Menuliskan model load otomatis di autoload maka model tersebut akan bisa di akses oleh semua controller yang ada pada project ci kita.

Permasalahan yang Sering Muncul

Nama model dan nama class tidak sama

Ada beberapa hal yang menakibatkan munculnya error seperti A PHP Error was encountered akibat kesalahan dalam menuliskan nama model dan nama class di codeigniter.

Saat membuat model perhatikan dengan baik nama yang digunakan dan sesuaikan dengan nama class. Sebagai Contoh saat membuat nama model User_model.php maka nama Class juga User_model.

Nama model codeigniter ditulis dengan awalan huruf besar namun nama class huruf kecil.

Jika ini dilakukan maka biasanya tidak ditemukan error A PHP Error was encountered saat dijalankan di localhost. namun error tersebut terjadi saat dijalankan di server hostingan.

Untuk menghindari error ini muncul maka perhatikan kembali apakah sudah sama antara nama class dan nama file. cek besar atau kecil huruf yang digunakan karena sifat case sensitif sepertinya terjadi saat dijalankan di web server.

Leave a comment