viernes, 13 de febrero de 2015
CAKEPHP: Eliminar datos de una tabla
Introducción
Ahora, ejecutamos nuestra aplicación y podremos eliminar los nombres desde la vista listar o bien colocando la siguiente ruta: http://localhost/MiPrimerCakePHP/nombres/delete/3
Siendo 3 el id de nuestro nombre, en la tabla de la base de datos.
Conclusiones
CAKEPHP, nos ahora tiempo y esfuerzo, como lo hemos visto cada vez es más sencillo realizar las acciones básicas con su ayuda.
En esta entrada aprenderemos a eliminar datos o filas de una tabla de nuestra base de datos, como es una secuencia que se está llevando, es preferible que hagan las partes anteriores sobre CAKEPHP, debido a que en este punto muchos de los elementos fundamentales están hechos y contiene información dentro. Para ir a los inicios del proyecto que estamos realizando ir acá. Y para mas temas y otros pasos de CAKEPHP ir acá.
Desarrollo
Para eliminar una fila de nuestra tabla, es sumamente sencillo. Primero debemos ir a la vista app/View/nombres/listar.ctp. Estando ahí la modificamos para que quede de la siguiente manera.
<?php echo ('<h1>Nombre de la BASE DE DATOS!</h1>'); // $nombres es la variable a la que le asignábamos el resultado de nuestra consulta en // la función listar en nuestro controlador if (empty($nombres)) { //Si no tienen nada nos dirá que no existen nombre actualmente echo ("Actualmente no hay Nombres."); } else { echo '<table>'; echo '<tr>'; echo '<th>id</th>'; echo '<th>Nombre</th>'; // --------------------------- echo '<th>Acciiones</th>'; // --------------------------- echo ' </tr>'; foreach ($nombres as $nombre): // recorremos nuestra variable para obtener cada uno de nuestros // nombres individualmente // luego de nuestro nombre sacamos los datos donde 'Nombre' es el nombre // de nuestro modelo e 'id' y 'nombre' son los campos de la tabla echo '<tr>'; echo '<td>'; echo $nombre['Nombre']['id']; echo '</td>'; echo '<td>'; echo $nombre['Nombre']['nombre']; echo '</td>'; // --------------------------- Link que se utiliza para eliminar un nombre // de nuestra tabla, Primero se coloca el nombre a mostrar ("Borrar") y // posteriormente la acción del controlador que se desea ejecutar en este // caso delete, además se le concatena el id del nombre que se desea eliminar echo '<td>'; echo $this->Html->link("Borrar", array("action" => "delete/" . $nombre['Nombre']['id'])); echo '</td>'; // --------------------------- echo ' </tr>'; endforeach; echo '</table>'; }
Lo único que se agregó fue una nueva columna a la tabla html que contendrá el link para eliminar el nombre, algo importante es esta parte, es que, gracias a CAKEPHP, el paso de parametros a las funciones es muy simple, solo colocamos el nombre de la acción a ejecutar, luego un slash "/" y posterior a esto los parámetros que recibe la función en nuestro caso solo es uno, pero si se necesitan muchos más solo se van separando con un slash "/".
Un ejemplo para lo anterior sería: delete/1 o delete/1/2/3/4
Donde los números corresponde a los valores que recibe como parámetro la función delete.
Ahora, que entendimos ese detalle, vamos al controlador app/Controller/NombresController.php, y agregamos la función para eliminar. Importante tener en cuenta que cuando hablamos de $this->Nombre nos estamos refiriendo al modelo.
public function delete($id = null) { // La función delete, busca el id en la base de datos y lo elimina. if ($this->Nombre->delete($id)) { // Muestra un mensaje informando lo sucedido $this->Session->setFlash('El nombre a sido eliminado correctamente.'); // Una vez eliminado redirecciona a la vista listar, en la cual ya no // aparecerá el nombre seleccionado previamente. $this->redirect('/nombres/listar'); } else { // Muestra un mensaje informando lo sucedido $this->Session->setFlash('El nombre no se ha podido eliminar'); } }
Ahora, ejecutamos nuestra aplicación y podremos eliminar los nombres desde la vista listar o bien colocando la siguiente ruta: http://localhost/MiPrimerCakePHP/nombres/delete/3
Siendo 3 el id de nuestro nombre, en la tabla de la base de datos.
Conclusiones
CAKEPHP, nos ahora tiempo y esfuerzo, como lo hemos visto cada vez es más sencillo realizar las acciones básicas con su ayuda.
Suscribirse a:
Enviar comentarios
(
Atom
)
No hay comentarios :
Publicar un comentario