Rabu, 14 Desember 2016

CODEIGNITER HMVC

,
HMVC atau hirarki model view controller adalah pengembangan dari MVC. Salah satu keuntungan menggunkan teknik modular HMVC sistem akan dipisahkan berdasarkan modul per-modul, hal ini akan memudahkan pengerjaan, perawaatan dan pembagian tugas dalam kerja tim.
Peralatan / Bahan yang dibutuhkan :
  1. Core Codeigniter https://www.codeigniter.com/ (saya menggunakan versi 3.1.2)
  2. Codeigniter modular extensions hmvc  https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc  
Langkah 1
Setelah keduanya didowonload, extract CodeIgniter-3.1.2.zip dan berinama sesuai dengan nama project yang akan dibuat disini saya memberi nama dengan nama lesson. Lalu copy ke htdocs.
Langkah 2
Extract wiredesignz-codeigniter-modular-extensions-hmvc.zip, di dalam folder hasil extract terdapat dua folder core dan third_party. Copy atau pindahkan kedua folder tersebut ke folder application yang berada di folder project yang telah dibuat pada Langkah 1. Masih dalam folder application, kita akan membuat modul caranya buatlah sebuah folder dengan nama modules. Didalam folder modules inilah nantinya kita memembuat script untuk project kita.

Langkah 3
Pada folder modules kita buat sebuah bernama dashboard dan didalamnya kita tambahkan folder controllers, models, dan views.
Selanjutnya kita tambhakan script untuk menampilakn sebuah halaman. Pertama buat sebuah controller dengan nama Dashboard (sesuai dengan nama modul) berikut script yang saya buat
 
defined('BASEPATH') OR exit('No direct script access allowed');
/**
 * Description of Dashboard
 * @author IMAM SYAIFULLOH
 */
class Dashboard extends MX_Controller
{
    public function __construct()
    {
   parent::__construct();
    }

    public function index(){
     $data['title'] = 'Lesson HMVC';
     $data['content'] = 'Hello World';
     $this->load->view('dashboard_index', $data, FALSE);
    }
}

Selanjutnya buat sebuah view dan saya beri nama dashboard_index, berikut scriptnya
Sehingga struktur folder & filenya menjadi berikut
Sebelum menjalankan project yang telah kita buat jangan lupa setting autoload helper file dan url, base_url, dan arahkan route ke nama modules yang kita buat, sehingga setelah dijalankan menjadi berikut