Yii implementa el diseño de patron modelo-vista controlador (model-view-controller MVC) el cual es adoptado ampliamente en la programación Web. MVC tiene por objeto separar la lógica del negocio de las consideraciones de la interfaz de usuario para que los desarrolladores puedan modificar cada parte más fácilmente sin afectar a la otra. En MVC el modelo representa la información (los datos) y las reglas del negocio; la vista contiene elementos de la interfaz de usuario como textos, formularios de entrada; y el controlador administra la comunicación entre la vista y el modelo.
Más alla del MVC, Yii tambien introduce un front-controller llamado aplicación el cual representa el contexto de ejecución del procesamiento del pedido. La aplicación resuelve el pedido del usuario y la dispara al controlador apropiado para tratamiento futuro.
El siguiente diagrama muestra la estructura estática de una aplicación Yii"
Estructura estática de aplicación Yii
El siguiente diagrama muestra un típico flujo de tareas de una aplicación Yii cuando resuelve un pedido de usuario:
Un típico flujo de tareas de una aplicación Yii
http://www.example.com/index.php?r=post/show&id=1
y el servidor Web resuelve el pedido ejecutado
and the Web server handles the request by executing el Script de entrada en index.php
.request
.urlManager
. Para este ejemplo el controlador es post
que refiere a la clase PostController
y la acción es show
que su significado es determinado por el controlador.show
refiere al nombre de método actionShow
en la clase
controlador. Entonces crea y ejecuta los filtros asociados con esta acción (ejemplo: control de acceso,
benchmarking). La acción es ejecutado si los filtros lo permiten.Post
cuyo ID es 1
de la base de datos. show
con el modelo Post
Post
.
Signup or Login in order to comment.