[Tutorial] Mengenal Konsep Model View Controller di CodeIgniter

30 July 2017 09:10:53

[Tutorial] Mengenal Konsep Model View Controller di CodeIgniter

Sebagai lanjutan dari dasar CodeIgniter sebelumnya di Tutorial Pendahuluan dan Pengaturan Dasar CodeIgniter , sekarang kita akan mulai mencoba belajar memahami konsep MVC di Framework CodeIgniter. MVC merupakan sebuah metode pengembangan aplikasi yang memisahkan data (Model) dan tampilan (View) dengan pengendali utama (Controller). Masing-masing komponen tersebut mempunyai tugasnya masing-masing.

 

Model : bagian yang berisi struktur data. Prinsipnya, seluruh pengolahan data secara logika maupun pengolahan database dilakukan di bagian ini. Model di CodeIgniter dibuat dalam bentuk Obyek dengan extends CI_Models.

View : bagian yang berisi tampilan antarmuka. Bagian ini hanya berisi tampilan HTML beserta sedikit pengolahan logika sederhana. 

Controller : bagian yang menjembatani struktur data (Model) dan tampilan antar muka (View). Merupakan bagian yang pertama kali dipanggil. Bagian ini bertugas mengirim dan juga memanggil data dari model maupun view untuk ditampilkan. 

Dari ketiga komponen tersebut, Controller adalah komponen paling penting yang pertama kali dipanggil dan harus ada. Kasarnya, website dengan framework CodeIgniter masih bisa berjalan sekalipun tidak ada view dan model yang digunakan, selama Controllernya bisa dipanggil (Contohnya seperti di post sebelumnya). 

Pertama-tama kita buat sebuah View. View dibuat di direktori application/views/ dengan nama file halaman_utama.php . Isinya terserah. Boleh pakai contoh script ini juga..

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<base href="<?=base_url()?>">
	<title>Belajar Code Igniter</title>
	<link rel="stylesheet" href="css/style.css">
</head>
<body>

<header>
	Judul Website
</header>
<main>
	<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Distinctio, eligendi in alias aspernatur ut. Reiciendis odio esse repellat quasi qui.</p>
</main>
<footer>
	&copy; 2017
</footer>
</body>
</html>

 

Ada beberapa hal yang perlu diperhatikan di bagian ini.. 

Misalnya dalam view tersebut kita ada memanggil CSS/JS eksternal, kita bisa meletakkannya di direktori utama website. Kalau dalam contoh, saya meletakkan folder "css" dan "js" di direktori utama sejajar dengan folder "application". attribute href di tag

tersebut saya hanya perlu memanggil seolah-olah sedang di halaman root. 

Root Location CSS dan JS

<!--Contoh Salah-->
<link rel="stylesheet" href="../../css/style.css">
<!--Tidak perlu slash back URL. anggap seperti sedang di halaman utama -->

<!--Contoh Benar-->
<link rel="stylesheet" href="css/style.css">

Kedua, tag <base> di head wajib digunakan kalau kita bermain di CodeIgniter. Kenapa? Karena CodeIgniter akan menerapkan URL Rewriting dalam bentuk direktori. tanpa tag yang tepat, CSS maupun JS eksternal kita nggak akan bisa berjalan dengan baik. 

Ketiga, fungsi base_url() di tag <base> nggak akan bisa berjalan kalau kita belum mengaktifkan autoloadnya. Atur di application/config/autoload.php. Sekitar baris 92, tambahkan di $autoload['helper'] menjadi 

...
$autoload["helper"] = array("url");
...

Setelah semuanya dilakukan, sekarang kita bisa memanggil view tersebut melalui controller yang diinginkan. Caranya adalah dengan menggunakan perintah $this->load->view(nama_view) di file application/controllers/Home.php fungsi index(), ubah isinya menjadi seperti ini :

...
	public function index(){
		//memanggil view dengan nama file halaman_utama.php
		$this->load->view("halaman_utama");
	}
...

Setelah melakukan itu semua, maka ketika kita mengakses halaman utamanya adalah seperti ini : 

Contoh Web MVC

Sekian dulu postingan kali ini, di tutorial selanjutnya kita akan belajar masih di MVC yang lebih dalam lagi..

Next : Tutorial Lanjutan MVC di CodeIgniter

0
0
SHARE

Contact Me