Model dibuat untuk mempermudah akses ke tabel database. Oleh karenanya, agar memudahkan kita dalam bekerja, sebaiknya pembuatan file model sesuai dengan kelompok aksesnya. Ada dua pilihan disini, yaitu :
- Kelompok berdasarkan tabel. Jadi, setiap tabel memiliki satu file model yang khusus untuk operasi di tabel tersebut.
- Kelompok berdasarkan jenis/topik. Misalnya anda mengelola sistem pegawai, mungkin model yang ada adalah sistem_gaji_model.php, sistem_kenaikan_pangkat.php, dsb, yang mana model tersebut mengakses lebih dari satu tabel, tapi mengarah ke topik yang sama.
File model disimpan dalam folder application/models/. Kita dapat menyimpannya langsung di folder tersebut atau bisa juga di dalam subfolder. Tapi ingat, hal ini mempengaruhi pada saat pemanggilan/load model. Contoh :
class Pegawai_model extends Model { // fungsi konstruktor, harus ada di setiap model yang kita buat (nama fungsi sama dengan nama class) function Pegawai_model() { parent::Model(); // baris wajib!! } function getAll() { $data = $this->db->get('pegawai'); return $data; } }
Setelah diload, kita dapat menggunakannya seperti class biasa, $this->nama_model->fungsi_model.
//jika langsung dalam app/models $this->load->model('nama_model'); //jika dalam subfolder $this->load->model('nama_sub_folder/nama_model');
Silakan baca user guide CI di bagian Database Class >> Active Record Class untuk lebih memahami bagaimana mengakses database secara optimal di CodeIgniter. {end of episode 3}