Selamat siang, melanjutkan tulisan saya sebelumnya tentang symfony, kalo sebelumnya kita sudah membuat aplikasi, model, form, dan filter, kali ini saya lanjutkan dengan membuat modul. modul merupakan folder / direktori dari setiap menu yang ada dalam aplikasi. Dalam modul terdapat action atau controller, template yang berisi file kode html atau tampilan dan file pendukung lainnya. Modul mempunyai dua jenis, yaitu modul admin dan tidak admin. Langsung saja ke TKP.

Modul Non Admin

      Untuk membuat modul non admin, kita tidak usah repot repot menulis kode satu persatu secara full manual, cukup ketik perintah berikut.

symfony propel:generate-module --non-verbose-templates --with-show nama_aplikasi nama_module nama_model 

kode di atas akan menghasilkan modul di dalam aplikasi yang agan tentukan. Contoh


kode di atas, saya membuat modul liststok pada aplikasi frontend dengan menggunakan model barang. Maka struktur direktori aplikasi frontend saya jadi seperti ini.


di dalam folder module terdapat folder modul liststok yang berisi folder actions dan template. template berisi file tampilan yang di dalamnya ada syntax html untuk membuat tampilan. Dan pada folder actions terdapat file action.php yang merupakan action / controller untuk modul liststok. Untuk menjalankannya, buka pada browser agan url

http://localhost/symfony/web/frontend_dev.php/liststok

symfony merupakan nama project agan, frontend_dev.php adalah nama aplikasi yang agan buat dan liststok adalah nama module yang akan di panggi. Dan coba lihat hasilnya. Kita sudah punya halaman yang sudah lengkap dengan operasi CRUD di dalamnya. Dan kira kira seperti inilah jadinya


Module Admin

       Module admin adalah module yang sudah dilengkapi dengan operasi CRUD, filter,sorting data. Jadi proses pembuatan aplikasi menjadi lebih cepat. Untuk membuat modul admin, ketik dan jalankan perintah berikut pada CMD.

symfony propel:generate-admin nama_aplikasi nama_model --module=nama_module

dan berikut adalah contoh yang saya pakai


syntax di atas saya membuat modul kategori di dalam aplikasi backend. Sehingga struktur folder aplikasi backend saya menjadi seperti berikut.


dan hasilnya di browser seperti berikut


kita sudah punya menu kategori lengkap dengan operasi CRUD, filter, dan sorting. Namun tampilan di atas sangat standart, kurang enak di lihat. Symfony sudah menyediakan tampilan default menu admin generator. Untuk menggunakannya cukup jalankan perintah berikut di CMD.

symfony plugin:publish-assets

dan coba muat ulang halaman admin tadi. Dan seperti inilah kira kira
 

Sementara cukup sekian tulisan saya kali ini. Insya allah saya lanjutkan di lain kesempatan.