Yii mengimplementasikan pola desain model-view-controller (MVC) atau model-tampilan-kontroler yang secara luas diadopsi dalam pemrograman Web. MVC bertujuan untuk memisahkan logika bisnis dari pertimbangan antar muka pengguna agar para pengembang bisa lebih mudah mengubah setiap bagian tanpa mempengaruhi yang lain. Dalam MVC, model menggambarkan informasi (data) dan aturan bisnis; tampilan berisi elemen antar muka pengguna seperti teks, formulir input; sementara kontroler mengatur komunikasi antar model dan tampilan.
Selain MVC, Yii juga memperkenalkan kontroler-depan, disebut aplikasi, yang menggambarkan berjalannya konteks proses permintaan. Aplikasi memecah permintaan pengguna dan membaginya ke kontroler yang sesuai untuk penanganan selanjutnya.
Diagram berikut memperlihatkan struktur statis sebuah aplikasi Yii:
Struktur statis aplikasi Yii
Diagram berikut memperlihatkan alur kerja umum sebuah aplikasi Yii saat menangani permintaan pengguna:
Alur kerja umum aplikasi Yii
http://www.example.com/index.php?r=post/show&id=1
dan server Web menangani permintaan dengan menjalankan naskah bootstrap index.php
.request
.urlManager
. Dalam contoh ini, kontroler adalah
post
yang merujuk pada kelas PostController
; dan aksi adalah show
yang arti sebenarnya ditentukan oleh kontroler.show
merujuk pada sebuah metode bernama actionShow
dalam kelas kontroler. Kemudian membuat dan menjalankan filter (contoh kontrol akses, pengukuran)
terkait dengan aksi ini. Aksi dijalankan jika diijinkan oleh filter.Post
model di mana ID adalah 1
dari database.show
dengan model Post
.Post
.
Signup or Login in order to comment.