Ver Mensaje Individual
  #20 (permalink)  
Antiguo 17/02/2012, 12:51
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: MVC:¿ Como cargar las plantillas ?

No, recuerda que el controlador solo extrae los datos del modelo, por ejemplo, este es un ejemplo usando Zend Framework:
Código PHP:
Ver original
  1. <?php
  2.  
  3. namespace Album\Controller;
  4.  
  5. use Album\Model\DbTable\AlbumTable,
  6.     Zend\Mvc\Controller\ActionController,
  7.     Zend\Paginator\Paginator,
  8.     Zend\View\Helper\PaginationControl;
  9.  
  10.  
  11. class ListController extends ActionController
  12. {
  13. // snip
  14.     public function indexAction()
  15.     {
  16.         $albums = $this->getAlbumTable()->fetchAll();
  17.         $matches = $this->getEvent()->getRouteMatch();
  18.         $nPage = $matches->getParam('page', 1);
  19.        
  20.         PaginationControl::setDefaultViewPartial('paginator.phtml');
  21.        
  22.         $paginator = Paginator::factory($albums);
  23.         $paginator->setDefaultItemCountPerPage(5);
  24.         $paginator->setCurrentPageNumber($nPage);
  25.        
  26.         return array('albums' => $paginator);
  27.     }
  28. }

El controlador simplemente esta consultando un modelo, creando un paginador y regresa los datos a la vista, donde ya son procesados:
Código PHP:
Ver original
  1. <h1>Albums</h1>
  2. <ul>
  3. <?php foreach ($this->albums as $album) { ?>
  4.     <li><?php echo $album->album_id; ?> - <?php echo $album->album; ?></li>
  5. <?php } ?>
  6. </ul>
  7. <?php echo $this->paginationControl($this->albums, 'Sliding'); ?>

Te recomiendo leer esto: http://weblog.jamisbuck.org/2006/10/...ller-fat-model

La idea es que el controlador sea lo más sencillo posible para que puedas cambiar el resultado de tu aplicación de la forma más sencilla en base a parámetros de entrada.

Saludos.