Diferencia entre revisiones de «Helper Datagrid»
(Página creada con ' ===DATAGRID FACIL DE CREAR.=== *'''setFieldsAndHeaders($valor)''' $valor = 'id: código'; donde id es el campo de la tabla y código es un string a mostrar. <source lang="p...') |
|||
Línea 1: | Línea 1: | ||
− | + | == DATAGRID FACIL DE CREAR.== | |
− | |||
− | |||
*'''setFieldsAndHeaders($valor)''' | *'''setFieldsAndHeaders($valor)''' | ||
Línea 73: | Línea 71: | ||
</source> | </source> | ||
− | *'''edit | + | *'''edit, delete''' |
Si existe un formulario por parte del programador estas funciones | Si existe un formulario por parte del programador estas funciones | ||
redireccionan a un controller personalizado, debe indicar el controller_name y action_name por defecto envia el id, a la accion | redireccionan a un controller personalizado, debe indicar el controller_name y action_name por defecto envia el id, a la accion | ||
Línea 79: | Línea 77: | ||
<source lang="php"> | <source lang="php"> | ||
$dataGrid->edit = 'usuarios/edit'; | $dataGrid->edit = 'usuarios/edit'; | ||
+ | </source> | ||
+ | |||
+ | o | ||
+ | <source lang="php"> | ||
$dataGrid->delete = 'clientes/delete'; | $dataGrid->delete = 'clientes/delete'; | ||
</source> | </source> | ||
Línea 122: | Línea 124: | ||
para finalizar y llamar al partial debe ser de esta manera | para finalizar y llamar al partial debe ser de esta manera | ||
− | |||
===USO BASICO=== | ===USO BASICO=== | ||
Línea 148: | Línea 149: | ||
− | ===CON PAGINATOR=== | + | ===DATAGRID CON PAGINATOR=== |
'''controller_clientes.php''' | '''controller_clientes.php''' | ||
Línea 174: | Línea 175: | ||
?> | ?> | ||
</source> | </source> | ||
+ | |||
[[Archivo:dataGrid.jpg]] | [[Archivo:dataGrid.jpg]] | ||
− | |||
Revisión del 00:58 11 sep 2009
DATAGRID FACIL DE CREAR.
- setFieldsAndHeaders($valor)
$valor = 'id: código'; donde id es el campo de la tabla y código es un string a mostrar.
$dataGrid->setFieldsAndHeaders('id: COD.', 'nombre: NOMBRE');
En este ejemplo hay un campo perfiles_id, pero indicando perfiles_nombre se visualiza el campo nombre de la tabla perfiles.
$dataGrid->setFieldsAndHeaders('id: COD.', 'perfiles_nombre: PERFIL');
- setColumnsAling($valor)
$valor = 'id: center'; donde id es el campo de la tabla y center es la propiedad
$dataGrid->setColumnsAling('id: center', 'nombre: left');
- caption
$tile: es un string que se muestra como titulo en la grilla.
$dataGrid->caption = $title;
- data_source
Es una propiedad muy importante ya que se obtienen los datos a mostrar. los datos son respuesta de un find, o un paginate.
$dataGrid->data_source = $this->Usuarios->find();
$dataGrid->data_source = $this->Usuarios->find("nombre like '%al%'");
$dataGrid->data_source = Load::model('usurios')->paginate('per_page: 20', "page: $page", "order: $order $asc_desc");
En caso que la grilla tenga un paginador
- url
Si utiliza paginator la grilla se debe indicar la url para el paginado, sino se indica por defecto obtiene el nombre del controlador y su accion de donde fue creado el dataGrid.
$dataGrid->url = 'usurios/index';
- show
número de paginas que se mostraran en el paginador, por defecto 10.
$dataGrid->show = 10;
- paginator_name
Es el nombre del paginador para la grilla por defecto usa el default puede incluir paginadores del kumbia.
Classic - Digg - Extended - Punbb - Simple
$dataGrid->paginator_name = 'classic';
- edit, delete
Si existe un formulario por parte del programador estas funciones redireccionan a un controller personalizado, debe indicar el controller_name y action_name por defecto envia el id, a la accion
$dataGrid->edit = 'usuarios/edit';
o
$dataGrid->delete = 'clientes/delete';
- delete_confirm
En caso que estubiera activo el delete se puede agregar un mensaje de confirmacion para eliminar. por defecto viene desactivado, se pueden pasar el campo a confirmar dentro de { }.
$dataGrid->delete_confirm = '¿Desea elmimar este registro?';
$dataGrid->delete_confirm = '¿Desea elmimar el registro {id}?';
$dataGrid->delete_confirm = '¿Desea elmimar este registro {nombre}, {apellido}?';
- setMimes($valores)
$valores = 'xls: verXls';
primer parametro es el nombre de la imagen que se encuentra en public/img/dataGrid/*.gif la extencion es gif. y el segundo parametro es la action que se será invocada en el mismo controlador que se encuentra el dataGrid. generea un icono al lado del registro, es util cuando el programador desea general una planilla excel o un pdf por: 'usuario, cliente, etc...'.
$dataGrid->setMimes('xls: descargarXls', 'pdf: verPdf', 'txt: archivoPlano');
- order_fields
Por defecto esta en false. sirve para realizar orden by a los campos pinchando en la cabezera de la grilla. se puede utilizar con o sin paginado
$dataGrid->order_fields = true;
para finalizar y llamar al partial debe ser de esta manera
USO BASICO
controller_clientes.php
public function index()
{
$this->clientes = $this->Clientes->find("order: nombre");;
}
views/clientes/index.phtml
View::content();
View::helpers('dataGrid');
$dataGrid = new dataGrid();
$dataGrid->setFieldsAndHeaders('rut: RUT', 'dv: DV', 'nombre: NOMBRE/RAZON SOCIAL', 'giro: GIRO',
'direccion: DIRECCION', 'ciudades_nombre: CIUDAD');
$dataGrid->data_source = $clientes;
View::partial('dataGrid/default',false,array('dataGrid'=>$dataGrid));
DATAGRID CON PAGINATOR
controller_clientes.php
public function index($page=1, $field='nombre', $order='asc')
{
$this->clientes = $this->Clientes->paginate('per_page: 20', "page: $page", "order: $field $order");
}
views/clientes/index.phtml
<?php
View::content();
View::helpers('dataGrid');
$dataGrid = new dataGrid();
$dataGrid->setFieldsAndHeaders('rut: RUT', 'dv: DV', 'nombre: NOMBRE/RAZON SOCIAL', 'giro: GIRO',
'direccion: DIRECCION', 'ciudades_nombre: CIUDAD');
$dataGrid->edit = $controller_name . '/edit';
$dataGrid->delete = $controller_name . '/delete';
$dataGrid->delete_confirm = '¿Desea eliminar este registro {rut}-{dv}, {nombre}?';
$dataGrid->order_fields = true;
$dataGrid->data_source = $clientes;
View::partial('dataGrid/default',false,array('dataGrid'=>$dataGrid));
?>