martes, febrero 19, 2008

Prontos primeros borradores de: surforce-base, surforce-library y surforce-modules

De a poco va tomando forma los distintos componentes para empezar a trabajar con Zend y reusar todos los módulos que podamos.

surforce-base

Ya tiene un módulo de ejemplo "noticias" que está andando bien. Solo queda resolver el tema del header y footer para que todos los módulos puedan acceder de forma centralizada a los mismos sin tener que repetirlos en cada sección de las vistas de cada módulo (en la nueva estructura cada módulo tiene dentro sus modelos, controladores y vistas, no tienen un lugar común). La solución estaría por un controller genérico que heredarían todos los controllers de los módulos y este estaría en suforce-library.

surforce-library

Se subió la primer versión con una estructura inicial con clases de ejemplo. La idea es que instalando una vez surforce-base, hay que instalar dentro del directorio "library" (igual que si fuera Zend) la librería Zsurforce. El proyecto base ya hace uso de clases de la librería.

surforce-modules

Tiene el mismo módulo de ejemplo de surforce-base ("noticias"), la idea de este repositorio es tomar lo que sirva y luego exportar (no sirve copiar los archivos, ya que irían los .svn y seguirían referenciando a los proyectos originales) en nuestro proyecto particular, para tener algo donde empezar y no de cero (más adelante se buscarán otras opciones). A pesar que el módulo "noticias" es igual en ambos repositorios (surforce-base y surforce-modules), se deja para facilitar las pruebas (también está el módulo "default").

Las urls que responden son:

http://localhost/surforce-base/ -> módulo "default"
http://localhost/surforce-base/noticias -> módulo "noticias"

Dentro de poco estoy agregando módulos como: usuarios, contactos, faqs, menú, etc.

Nota: "noticias" hace uso de conexión a la base de datos, en el directorio "sql" está su estructura y en application está config_sys.ini para cambiar los parámetros de conexión (config_app.ini solo es para cambiar particularidades de la aplicación, como títulos, etc).

Bueno, en las próximas horas más novedades. ;-)

8 comentarios:

Danilo Domínguez P. dijo...
Este comentario ha sido eliminado por el autor.
Danilo Domínguez P. dijo...

>Solo queda resolver el tema del
>header y footer para que todos los
>módulos puedan acceder de forma
>centralizada a los mismos sin
>tener que repetirlos en cada
>sección de las vistas de cada
>módulo (en la nueva estructura
>cada módulo tiene dentro sus
>modelos, controladores y vistas,
>no tienen un lugar común).

Que tal si pruebas la clase Zend_Layout que está en los últimas versiones (aunque no estables). Con este componente creas templates al estilo de cakephp y es genérico para todas las vistas. También tiene la opción de cambiar el template en el controlador.

enrique_place dijo...

Estimado Danilo:

Gracias por la sugerencia, sé que en parte soluciona este problema Zend_Layout, pero justamente la idea es usar la versión estable. Ni bien esté liberada se usará (estoy ansioso), pero por el momento ya logramos una solución (gracias Ana! ;-))

diFERente dijo...

Hola enrique, muy bueno el aporte para la comunidad hispana de zend framework. Yo me estoy tomando mi tiempo para aprender sobre el mismo y espero en algun momento poder ayudar en estos proyectos.
Como dice el amigo danilo, el cual me gano de mano para la sugerencia, se podria usar zend_layout. No creo que este inestable el codigo ya que si no me equivoco, lo pasaron de la incubadora a la libreria base.
Igualmente, voy a ver si modifico esta version que acabas de publicar de surforce-base para que corra con el zend_layout. Luego te la envio o la levanto en algun lado y me dices si te gusta.

Saludos,
Fernando.

enrique_place dijo...

Estimado diFERente:

> Hola enrique, muy bueno el
> aporte para la comunidad hispana
> de zend framework.

Bueno, son granitos de arena y sé que los necesitamos en nuestra comunidad hispana. Luego estará en cada uno que entienda que el feedback y la retroalimentación nos favorece a todos.

> Yo me estoy tomando mi tiempo
> para aprender sobre el mismo y
> espero en algun momento poder
> ayudar en estos proyectos.

Bienvenido entonces ;-)

> Como dice el amigo danilo, el
> cual me gano de mano para la
> sugerencia, se podria usar
> zend_layout. No creo que este
> inestable el codigo ya que si no
> me equivoco, lo pasaron de la
> incubadora a la libreria base.

Es un criterio que tomé dado lo extenso del Framework y lo poco que aún lo dominamos (considero que recién estoy en el 10% de lo estable, y si le sumanos ahora a lo nuevo e inestable, me vuelvo loco ;-)).

> Igualmente, voy a ver si
> modifico esta version que acabas
> de publicar de surforce-base
> para que corra con el
> zend_layout. Luego te la envio o
> la levanto en algun lado y me
> dices si te gusta.

Bienvenida sea, ni bien la tengas enviamela y la veo.

Gracias! ;-)

lisandro dijo...

Que tal Enrrique, seguí los pasos que describís aca pero me da un error;

Message: Invalid controller specified (surforce-social)

Alguna pista ?

Buen trabajo !, saludos

enrique_place dijo...

Estimado Lisandro:

Debes tomar como base surforce-base, ya que surforce-cms y surforce-social aún no están convertidos a esta nueva estructura modular, por eso no te van a funcionar.

Pero igual, los módulos hay que revisarlos uno por uno, ya que no están todos bien probados como para copiar y salir andando (pero casi).

;-)

lisandro dijo...

Gracias por la ayuda, ya estoy encaminado. Baje el surforce-base y me pedia el archivo 'Zsurforce/Generic/Controller.php', yo tenia uno pero no estaba acualizado asi que lo baje de surforce-library ;P

Todo va genial, gracias ! ;)