Belajar Kode Program

Blog belajar menulis kode program dan aplikasi komputer

Sabtu, 27 Mei 2017

Membuat Modul pada Yii2

Bagi Anda programmer yang terlibat di proyek aplikasi level enterprise, mungkin Anda membutuhkan artikel ini. Ya, modul sangat sesuai untuk pengembangan aplikasi yang dikerjakan oleh banyak tim programmer. Terlebih jika setiap tim itu dibebani untuk menyelesaikan satu bagian dari satu kesatuan aplikasi web. Hal ini dikarenakan agar setiap tim tidak mengganggu sekaligus tidak bergantung dari hasil kerja dari tim yang lain. Mengapa bisa begitu?

Membuat modul pada Yii berarti akan mengubah struktur file pada aplikasi. Folder yang dimaksud adalah folder modul. Pada folder ini, terdapat struktur MVC masing-masing beserta komponen-komponen pendukungnya. Dengan demikian, setiap tim yang bekerja pada satu modul tidak akan mengganggu tim dengan modul yang lainnya. Dengan kata lain pula, sebuah modul adalah aplikasi mini alias aplikasi dalam aplikasi.


Perhatikan contoh struktur file pada sebuah modul berikut:


Baiklah, kita akan praktik membuat sebuah modul. Kita akan memanfaatkan tool ajaib milik Yii yang bernama Gii. Pada kasus ini saya menggunakan template basic. Silakan merujuk pada cara menginstal Yii jika Anda lupa.

Buka halaman Gii di browser dengan alamat http://localhost:8080/?r=gii

Selanjutnya, tekan tombol start pada bagian module generator


 Akan muncul tampilan seperti berikut


Klik preview


Klik generate


Nah, seperti pada screenshot di atas, kita harus menambahkan pada file konfigurasi di bagian modules. Seperti contoh di atas:

$config = [
 //...
 'modules' => [
     'surat' => [
         'class' => 'app\modules\surat\Module',
     ],
 ],
 //...
];

Pastikan langkah konfigurasi module yang ini tidak terlewat. Selanjutnya, mari kita lihat pada struktur file yang terbentuk



Pada setiap modul ada sebuah kelas yang bernama Module.php.

Untuk mendapatkan informasi modul, dapat dilakukan dengan cara seperti berikut:

// mendapatkan modul dengan ID "surat"
$module = \Yii::$app->getModule('surat');

// mendapatkan modul tempat controller berada
$module = \Yii::$app->controller->module;

Lalu, untuk mengakses modul itu sendiri, URL yang digunakan mengikuti standar berikut:

index.php?r=moduleID/controllerID/actionID

Sebagai contoh, jika kita mengetikkan URL index.php?r=surat, maka fungsi yang akan dipanggil adalah fungsi actionIndex pada file DefaultController pada modul surat.

Mudah bukan? Selanjutnya, kita tinggal mengembangkan controller, model, dan view pada folder module yang sudah kita buat tadi.


Tidak ada komentar:

Posting Komentar