martes, 17 de enero de 2012

ZendFramework I - Estructura del sitio

Estructura del proyecto



Creando nuestro proyecto desde la consola D.O.S. o mediante Netbeans la estructura de la aplicación será como aparece en la gráfica. 


El directorio application es el "contenedor" de nuestra aplicación bajo MVC, aquí estará el código de: modelos,  vistas controladores y archivos de configuración como application.ini y Bootstrap.php.



De acuerdo a esta estructura Zend Framework 1.11.11 implementa Zend_Application para facilitar la configuración de bases de datos, manejo de vistas( HTML), reuso de código, archivo de arranque con posibilidad de diferentes ambientes o entornos de trabajo (producción, desarrollo, pruebas),registro de plugins, registro de action helpers y mucho más


Directorio configs: este tiene por defecto el archivo  application.ini el cual  permite configurar entornos de la aplicación, ruta de la libreria, ruta de controladores.
Este directorio se puede contener diferentes archivos .ini los cuales pueden ser llamados desde el archivo Bootstrap.php 


Directorio controllers: por defecto Zend_Tools crea IndexController y ErrorController. La clase IndexController tiene dos metodos init() e indexAction sin código a ejecutar.


class IndexController extends Zend_Controller_Action
{
    public function init()
    {
        /* Initialize action controller here */
    }
    public function indexAction()
    {
        // action body
    }
}


Directorio models: inicialmente vacio


Directorio views: dentro de este se encuentra el directorio helpers(ayudantes de las vistas que permiten reducir y simplificar código repetitivo) y  scripts, aquí encontrará por cada controller una carpeta y sus correspondientes vistas (código HTML).


Directorio Public: Es el directorio de acceso publico, dentro de él se pueden crear  subdirectorios css, javascripts, images. Es la entrada principal de la aplicación, para poder realizar esta función utiliza dos archivos .htaccess e index.php 


Archivo .htaccess


Al tener nuestro VirtualHost activo, todas las peticiones URL hacia nuestro proyecto pasaran por el archivo index.php, esto lo garantiza el archivo .htaccess,(este es un pequeño archivo de texto que permite modificar algunas directivas de Apache de directorios o archivos). La configuración por defecto de este archivo es:


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]


Directorio Library: Es el lugar de ubicación de la libreria o clases del framework, cuando se trabaja de forma local lo recomendable es crear un sólo directorio con la libreria e incluir en el path la ruta y así evitamos la duplicidad en cada proyecto.

No hay comentarios:

Publicar un comentario

Gracias por sus comentarios!