A. Tujuan
Mengetahui konsep Routing
Melakukan implementasi Model View Controller
Melakukan konfigurasi Pretty URL
Membuat Widget
C. Teori Singkat
Model View Controller (MVC) pada Yii terlihat pada struktur folder aplikasinya, yaitu
terdapat folder model (berisi semua file model), views (berisi semua file view) dan
controllers (berisi semua file controller).
Alur kerja aplikasi yang menggunakan framework Yii sama dengan alur kerja pada
konsep MVC. Berikut gambaran nya :
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
Alur kerja atau siklus aplikasi Yii berawal dari user yang mengakses Yii melalui entry
script. Pada entry script akan dibaca konfigurasi aplikasi, berdasarkan konfigurasi
tersebut aplikasi dijalankan. Aplikasi tersebut memproses routing yang diminta oleh user
melalui URL sehingga diketahui controller yang dimaksud user. Setelah diketahui
controllernya maka diciptakanlah controller yang dimaksud. Controller kemudian
menciptakan action berdasarkan routing.
Secara umum, aturan-aturan routing di Yii mengacu pada aturan coding standard
(www.php-fig.org) .
a. Routing di Yii sifatnya case sensitive atau membedakan huruf besar dan kecil. Secara
default, routing Yii menggunakan huruf kecil atau lowercase.
b. Routing di Yii otomatis berbentuk sesuai dengan controller dan fungsi action-nya.
Antara controller dan fungsi action dipisahkan dengan tanda slash /.
c. Nama fungsi pada controller yang akan menjadi routing adalah semua fungsi yang
diawali dengan kata action, contoh : actionIndex, actionCreate, dsb.
d. Jika nama controller terdiri lebih dari satu kata, misal HumanResourcesController,
maka routing menggunakan separator dash (-) untuk memisahkan dua kata tersebut.
Yaitu :
e. Demikian juga, jika action lebih dari satu kata actionJumlahRoda, maka routing juga
akan menggunakan separator dash (-) untuk memisahkan dua kata tersebut. Misal
pada MobileController maka URLnya menjadi sebagai berikut :
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
Kesimpulan : routing di Yii merupakan hubungan antara URL dengan controller dan
action. Routing pada Yii bersifat otomatis tanpa perlu didefinisikan secara manual
terlebih dahulu.
D. Langkah Kerja
- Kemudian akses fungsi tersebut melalui web browser dengan URL sebagai
berikut :
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
- Mengirim parameter dari URL untuk dibaca oleh controller dan kemudian
ditampilkan.
Tambahkan parameter nama pada URL menggunakan $_GET seperti PHP
biasa, dengan cara sebagai berikut :
Cara 1 :
public function actionHello(){
return "Hello ".$_GET['nama'];
}
Cara 2 :
public function actionHello($nama){
return "Hello ".$nama;
}
- jika berhasil maka tampilan yang muncul pada web browser sebagai berikut :
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
public function actionTampil()
{
return $this->render('hello',[
'nama' = 'Hafid Mukhlasin',
]);
}
- Akses pada web browser, jika berhasil maka akan muncul tampilan sebagai
berikut :
{
return $this->render('hello',[
'nama' => $nama,
]);
}
- Akses pada web browser, jika berhasil maka akan muncul tampilan sebagai
berikut :
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
- Akses pada web browser, jika berhasil akan muncul tampilan sebagai
berikut :
b. Membuat Hyperlink
- Buat action baru pada SiteController yaitu actionHyperlink dan buat file
baru pada view yaitu hyperlink.php
MODUL 2
Matakuliah : Aplikasi Sistem Enterprise
Topik : Yii2 Framework
Judul : Model View Controller
- Akses pada web browser, jika berhasil akan muncul tampilan sebagai
berikut :
E. Evaluasi
1. Silahkan lakukan penerapan MVC (Model View Controller) pada form
2. Buatlah sebuah widget sederhana
3. Kerjakan langkah-langkah dalam mempercantik URL pada Yii2