Ver Mensaje Individual
  #17 (permalink)  
Antiguo 12/02/2004, 11:41
Avatar de vitxo
vitxo
 
Fecha de Ingreso: septiembre-2003
Ubicación: Valencia
Mensajes: 219
Antigüedad: 20 años, 7 meses
Puntos: 0
Oye, entonces el tema de la vista podría quedar así: todas las acciones tienen en común que devuelven un objeto de la vista con el mismo nombre de la acción.
Así que en AbstractAction.process():
Código PHP:
function process( &$data ){
  
$views =& ViewManager::getInstance();
  return 
$views->getView$this->name );
  
//ó en vez de name $data -> getParameter('action');

A lo que iba, en una acción particular digamos: HelloWorldAction su método process() debería invocar a AbstractAction::process() al final para devolver la vista no? Porque sobreescribir no implica que se llame al método padre automáticamente, no?

De tal forma que se lo pasamos a la interfaz Template, a través del método expose.
Código PHP:
$controllerView -> expose'view'$view );
//esta linea a continuación puede ser discutible
$controllerView -> expose'data'$data ); 
correspodiéndose eso con una plantilla PHP:
Código PHP:
<html>
<body>
<?php echo $view -> render$data ?>
</body>
</html>
No lo he terminado de implementar, pero bueno, puede ser la solución. Para PHPMarker tendría que implementar una etiqueta especial para la ocasión, como un
Código:
<include-view name="nombre de la vista"/>
Bueno bueno, me voy a comer que ya son horas

Última edición por vitxo; 12/02/2004 a las 11:46