![Antiguo](http://static.forosdelweb.com/fdwtheme/images/statusicon/post_old.gif)
09/06/2008, 16:39
|
![Avatar de GatorV](http://static.forosdelweb.com/customavatars/avatar138775_9.gif) | $this->role('moderador'); | | Fecha de Ingreso: mayo-2006 Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 8 meses Puntos: 2135 | |
Respuesta: Algo que nunca he comprendido de las Vistas usando MVC Es un tema un poco bastante amplio, ya que como dices si no es tan sencillo, requiere de una lógica muy fuerte.
Yo en particular hago lo siguiente (a la hora de hacer un portal). Mi capa de negocios es la mas "fuerte", ya que en ella hago programo toda la aplicación, es decir por decir imaginemos un portal de noticias.
La capa de negocios consistiria en varios objetos que engloban la aplicación:
- Noticias
- Encuestas
- Noticias Relacionadas
- Noticia del Momento
- Banners ( Tanto laterales como "in-place" )
- ChatBox
Todos esos objetos y sus interacciones con la DB están en la capa de negocios, que engloban la capa de Modelo en si, pero van un poco más allá.
Ahora al mostrar el index, pues hay que mostrar todo el portal en 3 columnas, 1 columna con navegación y banner, columna de en medio con noticias del día, y la tercer columna es noticia del momento, encuesta, otro banner y el chatbox.
Ahora en las paginas de "leer mas" hay que volver a renderear todo (la navegación, encuesta, etc.) solo que con la única noticia que estas viendo por el "leer más".
Como son varias plantillas diferentes, y varias vistas únicas lo que yo haría en este caso (hablando expresamente de mi FW), seria extender el objeto $view, (es decir crear un nuevo objeto que herede a este), y sobre el trabajar que a la hora del render, haga un llamado a cada objeto "estático" (es decir encuesta / noticia del momento / banners / etc ), instanciarlos e inyectarlos en el template principal (es decir el Master).
Es una de las ventajas de la POO que luego se nos olvida, podemos extender un objeto para agregarle funcionalidad especifica que necesitamos en ese momento.
Espero con esto darte una idea de mas o menos como encarar una situación así.
Saludos. |