July 27th, 2011 Category: Curso php5 Programacion Zend Zend Framework
28 Comments »
Ya esta el capitulo dos del video tutorial de Zend Framework, en esta edicion vamos a dar un repaso sobre la estructura de direcotrios de Zend Framework, editar los controllers, las vistas, y el layout de nuestra aplicacion.
Tambien vamos a empezar a darle forma a nuestro proyecto. Y entender la diferencia entre el contenido estatico y el contenido generado por nuestro MVC.
Espero que lo disfruten, pueden usar los comments de este blog para plantear dudas, pedir que se refuerce algun tema, o pedir temas a tocar en el futuro.
Si te perdiste el video anterior podes verlo aca
Es recomendable ver el video en 720p de resolucion y en pantalla completa.
Los que quieran descargarse el codigo fuente pueden hacerlo desde github en http://github.com/pablofmorales/News123
Capitulo Anterior < Configuracion y creacion del proyecto
Proximo capitulo > Enviar parametros a las vistas y agregar archivos js y css a nuestro proyecto.
Invitame una Cerverza
Comentar
28 Responses
Realmente están buenos tus videos. Tienes una gran habilidad para explicar, claro y conciso.
Por lo visto Zend framework es igualito a CakePHP, pero mi duda es por qué, digamos, los más PRO usan Zend? Es moda? Realmente es muy superior a Cake o a Symfony?
Por cierto, te falta un botón para "invitarte una cerveza", te la invitaría en persona pero sí me queda lejos la Argentina.
Saludos
@Carlos, me vinieron unas ganas increibles de tomar una Cerverza, hoy estoy en Uruguay asi que me voy a tomar una zilerthal en honor a tu comment.
Con respecto a cake, vs Zf, la verdad que es un tema de nunca acabar, no es cosa de Pro contra Noobs, ni mucho menos. Escuche gente que usa cake porque le facilita mucho la creacion de proyectos.
Pero cake sigue siendo compatible con PHP4, y esto hace que el framework no aproveche las posibilidades de PHP5 en todo su esplendor, esto como basico.
Los principios de ZF, es crear aplicaciones robustas, escalables, siempre respetando los standards, y siendo lo mas profesional posible, aprovechando no solo lo mejor de php5.x sino aprovechando los paradigmas de programacion aprovechables desde el lado web. La verdad es que ZF hace que tus aplicaciones sean muchos mas profesionales, y prolijas, lo principal es la escalabilidad y el orden que plantea. Con cake trabaje con un proyecto ya creado y puesto en marcha, y la verdad es que no la pase bien editandolo. De codeigniter ya me queje mucho, no voy a volver a repetirlo por aca la verdad es que cada vez que veo en los foros o blogs gente hablando de CI me sube un escalofrio en el cuerpo, pero en algun momento voy a armar algun post sobre la comparativa de frameworks, por ahora te puedo decir que si a vos te gusta crear aplicaciones robustas,, escalables, prolijas, y super profesionales usen ZF. Si queres sacar aplicaciones para salir del paso segui con cake, obviamente, despues para extender o mantener una aplicacion en cake te va a costar 3 veces mas que con ZF. A la larga zf te termina ahorrando tiempo/plata/recursos
Saludos desde un país en represión. Chile.
Llevo vistos los 2 primeros y ya he podido montarme el proyecto y empezar a entender como funciona perfectamente.
Enhorabuena y espero que sigas asi, ya que facilitas mucho el aprendizaje.
Un abrazo y suerte
Por favor diganme como verlo, muchas gracias a quien pueda ayudarme.
http://www.vimeo.com/26958080
un abrazo
Primero que todo, gracias por compartir tus conocimientos de Zend. Yo llevo casi 10 años programando en PHP y admito que he sido un negado con el aprendizaje de los Frameworks, pero después de meterme a Wordpress y Joomla le he empezado a entender la gran ventaja que tienen.
Respecto a el tutorial, algo raro me ocurre. Con el video 1 y la mitad de este iba súper bien, pero creé las vistas y al momento de probar el código aparece "Application error" y nada.
Por cierto, no he podido hacerlo correr con ruta local como lo haces tú, pues este host lo uso para varios proyectos y al parecer apache no permite configurar la redireccion bajo carpetas. La forma de correrlo es : http://localhost/zend/public/ .
La versión de ZF que estoy usando es la 1.11. He estado intentando googlear este problema, pero nada. ¿Que puede ser?
Gracias y saludos desde Chile. Y si vienes me avisas, y yo si te invitaré una cerveza (o un vinito, jeje).
Para eso cada vez que creas un proyecto nuevo tenes que crear un virtual hosts para apache.
Como muestro en el video la configuracion basica en un linux, nose que SO usas, pero puedes buscar el equivalente a tu SO.
Si te da el error "Application Error", es porque no creaste el vhost, y seteaste que estas en el ambiente de desarrollo (development), esto lo haces configurando en tu vhost
SetEnv APPLICATION_ENV development
Sino podes ir a revisar los logs de apache.
Igual con configurar bien tu apache con los vhost ya resolverias tu problema.
Saludos
Saludos
Segundo es trasladarte una duda o cuestión que me tiene algo amargado ya que no encuentro la información precisa de lo que quiero hacer.
Te cuento... tengo dos layouts, uno el por defecto layouts.phtml y el otro adminlayout.phtml, este último queda bastante claro que es para el panel de administración. Por cierto tengo configurado una estructura de carpetas de tipo modular por lo que tengo un module admin y otro default. El caso es que quisiera configurar que por defecto el layout del módulo se admin, fuera adminloyout.phtml, sin tener que declararlo por cada controller que tenga. El caso es que me suena que se pueda hacer, pero no encuentro la manera. Podrías ayudarme?
Una consulta, para hacer mi proyecto mas escalable y sobre todo mas personalizado, no crees que deberia tener un boostrap.php para cada modulo?.
Bueno te cuento porque no logro configurarlo para tenerlo con un bootstrap para cada modulo, tienes algun link o info de como podria configurarlo?.
Saludos
Gildus
Sólo quería aclarar una cosa para los que empiezan, porque me ha surgido el problema y he tenido que buscar la solución...
Por defecto, la carpeta layouts no está creada, así que debemos crear /layouts/scripts/layout.phtml manualmente, y añadir la línea de código PHP necesaria para mostrar la vista que corresponda.
Pero no es suficiente, hay que decirle a ZF que queremos usar los layouts. Si no, aunque tengamos layout.phtml correctamente escrito y ubicado, Zend se lo saltará a la torera!
El comando para esto es "zf enable layout", sin comillas.
Si usáis NetBeans y lo tenéis bien configurado, lo podéis hacer fácilmente con "Botón derecho sobre el proyecto -> Zend -> Run Command"
¡Un saludo desde la ciudad del cierzo!
La verdad es que no me acuerdo, pero casi seguro que el layout en el video lo levanto haciendo zf enable layout.
Pero gracias por aclarar por si a alguno le paso lo mismo.
Saludos.!! hoy tenemos el hangout en google plus!
todavia no logro entender por que no me funciona el codigo del github..que me puede faltar pablo?
Que mensaje te muestra
como puedo hacer para tener varios layouts y utilizar a gusto el que crea conveniente.
donde colocaria,que declararia,haria un plugin, q me recomiendas
gracias por todo,tienes un excelente blog
1.- en la carpeta layout ->script/ alli escribo otro archivo phtml digamos q es fronted.phtml y backend.phtml
ahora en el controlador coloco lo siguiente:
$options=array('layout'=>'fronted',);//codigo para elegir diferentes layouts
Zend_Layout::startMvc($options);
con ello puedo cargar los layout q uno quisiera y hacert tantos como uno quiera
,si quisieran carga los el layout de backend,cambien la palabra fronted por backed
y listo.
Ami me funciono, me pongo a disposicion de las criticas de los grandes maestros,
estoy enpezando con Zend, puede q tenga q considerarse algo mas. Si es asi estoy presto a escuchar.


