En este artículo voy a explicar cómo obtener el id del último elemento insertado en una tabla (en mi caso lo hice con una base de datos de MySQL pero debería funcionar en otros motores) a través de Eloquent, usando el framework Laravel.
Obtener el último id insertado sirve cuando tenemos relaciones en nuestras bases de datos, y para crear la relación correcta necesitamos saber cuál es el id del elemento que acabamos de insertar.
Nota: ya hicimos esto con CodeIgniter.
Normalmente en Laravel definimos nuestros modelos de Eloquent y los guardamos usando el método save
,
Laravel va a guardar nuestro modelo pero además de eso va a refrescarlo, poniéndole todos los datos recién guardados; por lo que si queremos acceder al id simplemente tenemos que acceder a la propiedad. Veamos:
<?php
namespace App\Http\Controllers;
use App\Area; # Nuestro modelo
class AreasController extends Controller
{
public function agregar(GuardarArea $peticion)
{
$area = new Area; # Crear nuevo modelo
# Ponerle los datos para guardar
$area->nombre = $peticion->nombre;
# Guardar en BD
$area->save();
# ==================================
# Aquí tenemos el id recién guardado :)
# ==================================
$idAreaRecienGuardada = $area->id;
# Y podemos obtener cualquier propiedad, pues está refrescado
# Aquí ya puedes hacer lo que quieras con el id
}
}
En mi código, después de llamar a save
accedo a la propiedad id
del modelo, la cual será la que tiene la base de datos.
Esto supone que tu campo autoincrementable se llama id, si no se llama así, simplemente accede a otra propiedad y listo. Claro está que también puedes acceder a cualquier propiedad del modelo.
Con eso terminamos por hoy. Lee más sobre PHP, Laravel o la web.
En este post te quiero compartir mi experiencia tramitando un acta de nacimiento de México…
Hoy te voy a presentar un creador de credenciales que acabo de programar y que…
Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…
En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…
En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…
Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…
Esta web usa cookies.
Ver comentarios
Hermano... UN MILLÓN DE GRACIAS!!!
Tenía más de 3 horas buscando cómo encontrar ese valor porque estoy creando el usuario, pero al mismo tiempo estoy llenado una segunda tabla (estudiantes).
Me has salvado bro. Bendiciones