Diferencia entre revisiones de «Datagrid Simple»

De KumbiaPHP Framework Wiki
Línea 4: Línea 4:
  
 
<source lang="php">
 
<source lang="php">
 +
<?php
 +
class ClientesController extends ApplicationController {
 +
public function page(){
 +
$this->opciones = array('Modelo' => Load::model('dirigente')->find(), // Paso el modelo que voy a utilizar
 +
'Campos' => array('Codigo' => 'id',// paso un array con los campos que quiero mostrar
 +
  'Nombre' => 'nombre',
 +
  'Telefono' => 'telefono',
 +
  'Direccion' => 'direccion'))
 +
}
 +
 +
}
 +
?>
 +
 
//  Se maneja todo desde la vista
 
//  Se maneja todo desde la vista
 
</source>
 
</source>
Línea 9: Línea 22:
  
 
=== En la vista ===
 
=== En la vista ===
 +
/app/view/cliente/page.phtml
 
<source lang="php">
 
<source lang="php">
  View::partial('datagrid/simple', //nombre del partial
+
<?php
  false,
+
View::partial('datagrid/simple'false,$opciones)
array( 'Modelo' => Load::model('dirigente')->find(), // Paso el modelo que voy a utilizar
+
?>
'Campos' => array('Codigo' => 'id',// paso un array con los campos que quiero mostrar
 
  'Nombre' => 'nombre',
 
  'Telefono' => 'telefono',
 
  'Direccion' => 'direccion'))
 
      )
 
 
 
 
 
</source>
 
</source>
  
Línea 27: Línea 34:
  
 
<source lang="php">
 
<source lang="php">
echo "<div id=\"datagrid\">";
+
 
 +
<?php
 +
/**
 +
* Renderiza una tabla en base a un modelo.
 +
*
 +
* @Andres Hal
 +
*
 +
* @param array $Modelo modelo del activerecod
 +
* @param array $Campos array con los que se quieren mostrar de la tabla
 +
* @return partial
 +
*/
 +
?>
 +
 
 +
<div id="datagrid">
 +
<?php
 
echo "<table  border=\"1px\" class=\"simple\">";
 
echo "<table  border=\"1px\" class=\"simple\">";
 
echo "<thead><tr>";
 
echo "<thead><tr>";
Línea 41: Línea 62:
 
echo "</tr>";
 
echo "</tr>";
 
endforeach;
 
endforeach;
echo "</tbody></table></div>";
+
echo "</tbody></table>
 +
?>
 +
</div>";
 
</source>
 
</source>
 
[[Categoría:Partials]]
 
[[Categoría:Partials]]

Revisión del 01:36 21 ago 2009

Partials para crear de forma simple un datagrid

En el controlador

<?php
class ClientesController extends ApplicationController {
	public function page(){
	$this->opciones = array('Modelo' => Load::model('dirigente')->find(), // Paso el modelo que voy a utilizar
				'Campos' => array('Codigo' => 'id',// paso un array con los campos que quiero mostrar 
						  'Nombre' => 'nombre',
						  'Telefono' => 'telefono',
						  'Direccion' => 'direccion'))
	}

}
?>

//  Se maneja todo desde la vista


En la vista

/app/view/cliente/page.phtml

<?php	 
 View::partial('datagrid/simple'false,$opciones)
?>

Partials

/app/view/partials/datagrid/simple.phtml

<?php
/**
 * Renderiza una tabla en base a un modelo.
 *
 * @Andres Hal
 *
 * @param array $Modelo modelo del activerecod
 * @param array $Campos array con los que se quieren mostrar de la tabla
 * @return partial
 */
?>

	<div id="datagrid">
	<?php
		echo "<table  border=\"1px\" class=\"simple\">";
		echo "<thead><tr>";
			foreach( $Campos  as $titulo => $valor):
				echo "<th>" . $titulo . "</th>";
			endforeach;
		echo "</tr></thead><tbody>";
			foreach( $Modelo as $model):
				echo tr_color_class( 'tr_primary', 'tr_secondary' );
				foreach($Campos as  $campos):
					echo "<td>". $model->$campos . "</td>";
				endforeach;
				echo "</tr>";
			endforeach;
		echo "</tbody></table>
	?>
	</div>";