|
|
(No se muestran 2 ediciones intermedias de otro usuario) |
Línea 1: |
Línea 1: |
− | ===DATAGRID FACIL DE CREAR.===
| + | lugar donde se iran agregando Helpers |
| | | |
− | *'''setFieldsAndHeaders($valor)'''
| + | [[Categoría:Tutoriales KumbiaPHP]] |
− | | + | [[Categoría:Views]] |
− | $valor = 'id: código';
| |
− | donde id es el campo de la tabla y código es un string a mostrar.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->setFieldsAndHeaders('id: COD.', 'nombre: NOMBRE');
| |
− | </source>
| |
− | | |
− | | |
− | En este ejemplo hay un campo perfiles_id, pero indicando perfiles_nombre se visualiza el campo nombre de la tabla perfiles.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->setFieldsAndHeaders('id: COD.', 'perfiles_nombre: PERFIL');
| |
− | </source>
| |
− | | |
− | | |
− | *'''setColumnsAling($valor)'''
| |
− | $valor = 'id: center';
| |
− | donde id es el campo de la tabla y center es la propiedad
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->setColumnsAling('id: center', 'nombre: left');
| |
− | </source>
| |
− | | |
− | *'''caption'''
| |
− | $tile: es un string que se muestra como titulo en la grilla.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->caption = $title;
| |
− | </source>
| |
− | | |
− | *'''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.
| |
− | | |
− | <source lang="php">
| |
− | $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");
| |
− | </source>
| |
− | | |
− | <u>En caso que la grilla tenga un paginador</u>
| |
− | | |
− | *'''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.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->url = 'usurios/index';
| |
− | </source>
| |
− | | |
− | *'''show'''
| |
− | número de paginas que se mostraran en el paginador, por defecto 10.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->show = 10;
| |
− | </source>
| |
− | | |
− | *'''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
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->paginator_name = 'classic';
| |
− | </source>
| |
− | | |
− | *'''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
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->edit = 'usuarios/edit';
| |
− | | |
− | $dataGrid->delete = 'clientes/delete';
| |
− | </source>
| |
− | | |
− | *'''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 { }.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->delete_confirm = '¿Desea elmimar este registro?';
| |
− | </source>
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->delete_confirm = '¿Desea elmimar el registro {id}?';
| |
− | </source>
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->delete_confirm = '¿Desea elmimar este registro {nombre}, {apellido}?';
| |
− | </source>
| |
− | | |
− | *'''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...'.
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->setMimes('xls: descargarXls', 'pdf: verPdf', 'txt: archivoPlano');
| |
− | </source>
| |
− | | |
− | *'''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
| |
− | | |
− | <source lang="php">
| |
− | $dataGrid->order_fields = true;
| |
− | </source>
| |
− | | |
− | | |
− | para finalizar y llamar al partial debe ser de esta manera
| |
− | | |
− | | |
− | ===USO BASICO===
| |
− | | |
− | '''controller_clientes.php'''
| |
− | | |
− | <source lang="php">
| |
− | public function index()
| |
− | {
| |
− | $this->clientes = $this->Clientes->find("order: nombre");;
| |
− | }
| |
− | </source>
| |
− | | |
− | '''views/clientes/index.phtml'''
| |
− | <source lang="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->data_source = $clientes;
| |
− | View::partial('dataGrid/default',false,array('dataGrid'=>$dataGrid));
| |
− | | |
− | </source>
| |
− | | |
− | | |
− | ===CON PAGINATOR===
| |
− | | |
− | '''controller_clientes.php'''
| |
− | <source lang="php">
| |
− | public function index($page=1, $field='nombre', $order='asc')
| |
− | {
| |
− | $this->clientes = $this->Clientes->paginate('per_page: 20', "page: $page", "order: $field $order");
| |
− | }
| |
− | </source>
| |
− | | |
− | '''views/clientes/index.phtml'''
| |
− | <source lang="php">
| |
− | <?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));
| |
− | ?>
| |
− | </source>
| |
− | | |
− | | |
− | | |
− | [[Archivo:[[Archivo:dataGrid.jpg]]]] | |