Skip to content

Latest commit

 

History

History
62 lines (42 loc) · 2.05 KB

README.rst

File metadata and controls

62 lines (42 loc) · 2.05 KB

DataTable

Lib para crear tablas html con el resultado de una consulta ActiveRecord

Ejemplo de Uso

//en el controlador
$this->menus = Load::model("menus")->find();

//tambien se puede paginar
$this->menus = Load::model("menus")->paginate("page: $pagina");

//si se usa el paginate, se mostrará el paginador en la tabla,
//no hay que hacer cambiar nada si se usa paginate ó find solo
//especificar la url en el paginador
//$dt->url("usuarios/index"); por ejemplo.
//la lib tiene una paginador por defecto pero se pueden usar los del fw
//$dt->typePaginator("paginators/digits")


//en la vista

//pasamos el resultado de la consulta al constructor de la clase
$dt = new DataTable($menus);

//creamos las cabeceras de las columnas

//podemos pasar cualquier html en las columnas
$dt->addHeaders(Form::check('seleccionar_todos', 'todos', NULL, FALSE));
//cada vez que llamemos a addHeaders se van a agregar columnas a la tabla.
$dt->addHeaders('id', 'Texto a Mostrar', 'Menu Padre');
$dt->addHeaders('Recurso al que Accede', 'URL', 'Posición');
$dt->addHeaders('Estado', 'Editar', 'Eliminar');

//agregamos los campos del modelo a usar

$dt->check('menu_id'); //creamos un checkbox con name="menu_id[]"

//agregamos los campos del modelo de donde sacaremos los valores.
$dt->addFields('id', 'nombre', 'padre', 'recurso', 'url', 'posicion');
//tambien podemos especificar nombres de metodos, por defecto
//busca si el metodo existe, si es así lo llama y muestra el resultado
//sino existe el metodo, llama al atributo directamente.

//crea un link con una imagen
$dt->imgLink('figuras/circulo_rojo.png|figuras/circulo_verde.png',
        'admin/menu/activar|admin/menu/desactivar', '', 'activo');
$dt->imgLink('figuras/editar.png', 'admin/menu/editar');

//crea un link con una imagen y muestra un enlace de confirmación
$dt->imgLinkConfirm('figuras/eliminar.png', 'admin/menu/eliminar', '',
        '¿Realmente desea Eliminar El Menu ?');


//genera la tabla html
echo $dt->render('class="table table-bordered table-striped"');