Backlist

Genera una interfáz completa para administrar registros de una base de datos. Combina una tabla, donde se listan los registros, con un filtro de búsquedas y botones de acción y de paginación, todo estará contenido en una caja, encargada de la distribución de los elementos y de dar estilos al conjunto.

 

Ejemplo inicial

Para comenzar, se debe crear la caja y, opcionalmente, los botones para las diferentes acciones.

// box
$bbx = Backlist::getBox([ string $snippet= 'default', string $id = ''] );

// actions
$bac = $bbx->getActions();
$bac->create();
$bac->edit();
$bac->delete();
$bac->refresh();

$bbx->render( [string $content = ''] );

En la última línea, en el método render de la caja se puede incluir el resto de la lista, es decir, los filtros y la tabla. Sin embargo, este contenido también se puede incluir de modo asíncrono.

 

Crear la tabla y los filtros

En el siguiente ejemplo se muestra cómo se crea la tabla, y, opcionalmente, los filtros.

// list
$bls = Backlist::get();

// filters
$bft = $bls->getFilters();
$bft->setValues($data);
$bft->search();

// table
$bls->setRows($rows);
//
$bls->check();
$bls->column(':name')->setLabel(_t('Name'));
$bls->column(':created_at')->setWidth(90);
$bls->status();

echo $bls->render();

En los filtros, los valores de los elementos se abregan todos juntos, igual a como lo hacen los formularios.

La tabla también ingresa todas las filas a través del método setRows. Luego, se definen cada una de las columnas que tendrá la tabla.