Creando una aplicacion Modular con Zend Framework

Usando Zend Tool podemos crear proyectos con una estructura de proyectos predefinida. Esta estructura por defecto no es modular. Para trabajar con una estructura modular en ZF tenemos que crear un primer modulo, creado este modulo ZF se configurara para seguir trabajando con módulos.

Entonces en la consola, creamos el proyecto:
$ sudo zf create project test

Y creamos el modulo "default"
$ sudo zf create module default

El application.ini pasara de esto:
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0

a esto:
[production]
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.frontController.params.prefixDefaultModule = "1"

Se agregaron dos lineas que hacen referencia a los módulos.

También se habrá creado la carpeta "modules" y sus respectivas sub-carpetas.


Una vez creado el modulo cuando entremos a "http://localhost/test/public/" buscara en en modulo "default", si entramos ahora nos quedara en blanco.

Se ha creado el modulo, pero no hay "Controller" ni "Action", crearemos uno.

En terminal:
$ sudo zf create controller Index 1 default

"Index" es el nombre del controlador, 1 significa que creara un "Action" con el mismo nombre, "default" el modulo en que lo creara.

Ahora si debería funcionar "http://localhost/test/public/".


Entradas populares