Selain implementasi MVC, Yii juga memperkenalkan front-controller(controller-depan), yang disebut Aplikasi, yang mengenkapsulasi konteks eksekusi untuk memproses sebuah request. Aplikasi mengumpulkan beberapa informasi mengenai request pengguna dan kemudian mengirimnya ke controller yang sesuai untuk penanganan selanjutnya.
Diagram berikut memperlihatkan struktur statis sebuah aplikasi Yii:
1. Alur Kerja Umum
Diagram berikut memperlihatkan alur kerja umum sebuah aplikasi Yii saat menangani permintaan pengguna:
- Pengguna membuat permintaan dengan URL
http://www.example.com/index.php?r=post/show&id=1
dan server Web menangani permintaan dengan menjalankan skrip bootstrapindex.php
. - Skrip bootstrap membuat sebuah instance Aplikasi dan menjalankannya.
- Aplikasi mendapatkan rincian informasi permintaan pengguna dari komponen aplikasi bernama
request
. - Aplikasi menentukan controller dan aksi yang diminta dengan bantuan komponen aplikasi bernama
urlManager
. Dalam contoh ini, controller adalahpost
yang merujuk pada kelasPostController
; dan aksi adalahshow
yang arti sebenarnya ditentukan oleh controller. - Aplikasi membuat instance controller yang diminta untuk selanjutnya menangani permintaan pengguna. Controller menentukan aksi
show
merujuk pada sebuah metode bernamaactionShow
dalam kelas controller. Kemudian membuat dan menjalankan filter (contoh kontrol akses, pengukuran) terkait dengan aksi ini. Aksi dijalankan jika diijinkan oleh filter. - Aksi membaca
Post
model di mana ID adalah1
dari database. - Aksi meyiapkan view(tampilan) bernama
show
dengan modelPost
. - View membaca dan menampilkan atribut model
Post
. - View menjalankan beberapa widget.
- View menyiapkan hasil yang dipasangkan dalam layout(tata letak).
- Aksi mengakhiri pembuatan view dan menampilkan hasil akhir kepada pengguna.
0 comments: