Datagrid Gecko Toolbox
Por zsamer en Julio 27, 2008
He tenido la excelente noticia de nuestro distinguido Colega y Moderador de Foros del Web de PHP Christopher Valderrama (GatorV), quien ha liberado su Framework llamado GeckoToolbox que está basado sobre Zend Framework.
He estado analizando y estudiando su Framework y he querido destacar una notable herramiente que sin duda agiliza bastante el desarrollo web (RAD), se trata del componente Datagrid.
Instalación
Descargar el framework GeckoToolbox mediante SVN, más detalle ver enlace.
Una ves que hayan hecho checkout y tengan una copia del repositorio deben copiar GeckoToolbox, carpeta Gecko dentro de la carpeta library de nuestro proyecto (donde mismo está Zend Framework).
Además se debe editar Gecko/Router.php y modificar el paths en las 2 constantes (contants), el segundo corresponde al path físico hacia la library, y el primero es el path para los Assets, las carpetas Assets deben ser accesibles/legibles mediante web ya que estos contienen los archivos JS e imágenes.
Más detalle de instalación.
Ejemplo de uso
Algúna acción con algún modelo:
-
public function listAction()
-
{
-
-
Gecko_URL::setDefaultURLEngine(new Gecko_URL_Engine_Zend());
-
-
$grid = new Gecko_DataGrid("comments", $model, $settings);
-
$formatter = $grid->getFormatter();
-
"comment_id" => "ID",
-
"comments" => "Comments"
-
);
-
-
$formatter->setColumnNames($colNames);
-
$urlRenderer = new Gecko_DataGrid_CellRenderer_URL($this->view->baseUrl . "/blog/comment/view/?id=%VALUE%", "comment_id");
-
$formatter->addCellRenderer("comment_id", $urlRenderer);
-
-
$grid->buildTable();
-
-
$this->view->grid = $grid;
-
}
Se puede apreciar lo simple que es tratar con DataGrid con esta potente herramienta. Primero se crea la instancia de nuestro objeto Data Source del tipo DBTable (de Zend), al cual le pasamos al constructor nuestro objeto Modelo (Zend_Db_Table_Abstract).
Luego es notable darse cuenta como se configura la URL, mediante setDefaultURLEngine, la cual le entregamos por defecto un objeto que hace una implementación de Url de Zend Framework, es muy importante este paso ya que nos entrega las url correctas a la hora de paginar y ordenar por columnas en nuestro DataGrid.
Gecko DataGrid hace un muy buen uso de patrones de diseño y interfaces muy bien definidas y utilizadas, lo que hace una elegante implementación y sencilla de usar.
Veamos ahora nuestra vista:
Muy simple, ¿no?, bueno aquí primero nos entrega los mensajes del estilo: "Mostrando 1 de 5 páginas".
Luego nos imprime/render el Datagrid mediante (__toString()) .
Por último no entrega el paginador.
Estupendo, que más podríamos querer, para más detalle y uso como por ejemplo decoradores para estilos etc... vean el sitio oficial de GeckoToolbox.
Cualquier dudad, preguntas o sugerencias dirigirse al propio autor en la wiki, hay una sección de comentarios.
Comentarios
6 Responses to “Datagrid Gecko Toolbox”
Deja tu comentario

Estimado, bienvenidos los post sobre Gecko
Estaba probando tu ejemplo, pero me dice que el método Gecko_URL::setdefaulturlengine() no existe… ?
Pequeño error creo en el update del repositorio, pero ya esta solucionado.
Gracias por tomarte el tiempo de escribir esto, espero les sirva a muchos para usar el componente Grid.
Gracias a ti Christopher por compartir tu Framework.
Gracias a ambos por ser como son y gracias a mi por leerlos a ustedes
Gracias, “gracias totales”.
joder, no se puede acceder dsd cuba… alguna manera de probar el proyecto?
USA bloquea algunos sitios de internet a la isla.
salu2