Ver Mensaje Individual
  #21 (permalink)  
Antiguo 15/02/2004, 08:14
Avatar de vitxo
vitxo
 
Fecha de Ingreso: septiembre-2003
Ubicación: Valencia
Mensajes: 219
Antigüedad: 20 años, 7 meses
Puntos: 0
hola de nuevo!

He estado pensando.
Para la web que estoy haciendo se distiguen "tres webs diferentes", es decir, que mi aplicación tiene tres vistas diferentes. Cada una usa una plantilla diferente par el "layout" o maquetación de la página.

Entonces implementé las tres vistas que heredan de la interfaz FullscreenView. No he desarrollado bien la idea y me he peleado un poco con las acciones que se ejecutan "dentro" de cada vista, vamos un lío de narices.

Alternativas que he pensado pero necesito puntos de vistas de terceros :
1. Que el controlador tenga su propio nombre y plantilla bien definidos: un atributo de clase var $nombre y $plantilla.

Entonces al detectar que una vista es de tipo FullscreenView (porque hereda de ella tipo, atributos y métodos), que obtenga la ruta de la plantilla y la use en vez de la plantilla del controlador. ($view -> getTemplatePath() en vez de $this->getTemplatePath()). FullscreenView pasaría ser una clase abstracta.

Pero, tanto lío de herencia para luego eso? no sé

2. Como todos los objetos se destruyen y se crean a cada nueva petición, estaré obligado a persistir el FullscreenView para mantener ese layout. Pero si me pongo a meter parámetros en la URL teng "miedo" de caer otra vez en el lío.

Así que si creo tres objetos controladores en el index.php al que llamamos desde el navegador, uno para cada vista de cada evento que quiero se me solucionan muchos problemas (me olvido ya del singleton del controlador), además que reusaría las acciones hasta tres veces (eso tiene buena pinta??).
Igualmente tengo que elegir siempre un controlador con un parámetro en la URL de la siguiente manera:
Código:
index.php?controller=iparty
Para ejecutar la accion login del controlador de la iParty (el nombre del evento):
Código:
index.php?controller=iparty&action=login
Ahora que caigo, es un enfoque parecido al del FullscreenView.

leyéndonos que es gerundio.