Posted by yemore on March 18, 2014 at 1:06pm
Necesito listar la información que tengo almacenada en la base de datos, la cual había entrado con anterioridad. Además de ello permitir la opción de editar y eliminar en cada una de las filas. Lo otro es que el caso de que tenga que listar muchos elementos pueda paginarlos. Podría alguien, hacer el favor de indicarme un tutorial o las funciones que necesito para conseguir esto. Seria algo como esto:
| Provincias |
| La Habana | Editar | Eliminar
| Matanzas | Editar | Eliminar
| Pinar del Río | Editar | Eliminar
| Artemisa | Editar | Eliminar
| Mayabeque | Editar | Eliminar
| Cienfuegos | Editar | Eliminar
| … | … | …
1 << <1 2 3...> >> 8
Comments
Hola Yemore Aquí una guía
Hola Yemore
Aquí una guía parcial de lo que preguntas http://www.7sabores.com/blog/crear-tablas-modulos-personalizados-drupal-7
enzo - Eduardo Garcia
Gracias pero no es eso lo que
Gracias pero no es eso lo que necesito, no me supe explicar bien disculpa. Ya yo tengo las tablas creadas en la base de datos, con la información almacenada. Lo que necesito es mostrar esa información a manera de tabla. Una vista en la que muestre una tabla con la información almacenada.
Theme table
Espero esto te sirva:
<?php
function league_event_type_admin_list() {
$event_types = league_event_load_event_types('all');
$header = array(t('ID'), t('Type'), t('Label'), t('Points'), t('Icon'), t('Edit'));
$rows = array();
foreach ($event_types as $event_type) {
$rows[] = array(
$event_type->id,
$event_type->type,
$event_type->label,
$event_type->points,
$event_type->class_icon,
l('Edit', 'admin/league/settings/tables/league_event_type/edit/' . $event_type->id
));
}
return theme('table', array(
'header' => $header,
'rows' => $rows,
'attributes' => array('class' => array('league-event-type-admin-list'))
));
}
?>
Diseño Web
Views
También puedes integrar tu tabla a views, más trabajo pero mejor resultado: http://drupal.stackexchange.com/questions/36912/using-views-with-a-custo...
Diseño Web
¿Por lo que ví en tu
¿Por lo que ví en tu solicitud quieres hacer una paginación? Si solo necesitas mostrar los datos con el uso de theme_table resuelves como te demuestra @hatuhay arriba (puedes ver más opciones aquí: https://api.drupal.org/api/drupal/includes!theme.inc/function/theme_table/7), pero si además quieres hacerlo con una paginación ya son otros 5 pesos.
Aqui te muestro un ejemplo de una tabla con paginación y ordenamiento en las columnas por si te sirve:
<?php
$header = array(
'artcode' => array('data' => t('Articulo'), 'field' => 'v.artcode', 'sort' => 'asc'),
'descart' => array('data' => t('Descripcion Art.'), 'field' => 'i.description'),
'magcode' => array('data' => t('Codigo Alm.'), 'field' => 'v.magcode'),
'descalm' => array('data' => t('Descripcion Alm.'), 'field' => 'm.naam'),
'maglok' => array('data' => t('Localizacion'), 'field' => 'v.maglok'),
);
$query = db_select('voorrd', 'v');
$query->join('items', 'i', 'v.artcode = i.ItemCode');
$query->join('magaz', 'm', 'v.magcode = m.magcode');
$query->condition('v.maglok', '', 'IS NOT NULL');
$query->fields('v', array('artcode', 'magcode', 'maglok'));
$query->fields('i', array('description'));
$query->fields('m', array('naam'));
$query = $query->extend('TableSort')
->extend('PagerDefault');
$query->limit(20)
->orderByHeader($header);
$rs = $query->execute();
$row = array();
$arts = $alms = array('' => '');
foreach ($rs as $item) {
$row[$item->artcode . '-' . $item->magcode] = array(
'artcode' => $item->artcode,
'descart' => $item->description,
'magcode' => $item->magcode,
'descalm' => $item->naam,
'maglok' => $item->maglok,
);
}
?>
Chicos mil gracias
Chicos mil gracias, me he demorado en contestar porque no tenía acceso, pero al fin lo conseguí.
function municipio_listar(){
$header = array('Municipio', 'Edición', 'Eliminación');
}
Otra cosita
Déjenme preguntarle otra cosita sobre la creación de tablas para mostrar datos. Con theme() puedo crear tablas simples, por lo que entendí en la página de Drupal. Pero si quisiera hacer algo más complejo como esto: