laravel

Laravel: Obtener id de último elemento insertado con Eloquent

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.

Último ID de tabla con Eloquent y Laravel

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.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

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

Entradas recientes

Tramitar acta de nacimiento en línea de manera instantánea

En este post te quiero compartir mi experiencia tramitando un acta de nacimiento de México…

33 min hace

Creador de credenciales web – Aplicación gratuita

Hoy te voy a presentar un creador de credenciales que acabo de programar y que…

2 semanas hace

Desplegar PWA creada con Vue 3, Vite y SQLite3 en Apache

Ya te enseñé cómo convertir una aplicación web de Vue 3 en una PWA. Al…

2 semanas hace

Arquitectura para wasm con Go, Vue 3, Pinia y Vite

En este artículo voy a documentar la arquitectura que yo utilizo al trabajar con WebAssembly…

2 semanas hace

Vue 3 y Vite: crear PWA (Progressive Web App)

En un artículo anterior te enseñé a crear un PWA. Al final, cualquier aplicación que…

2 semanas hace

Errores de Comlink y algunas soluciones

Al usar Comlink para trabajar con los workers usando JavaScript me han aparecido algunos errores…

2 semanas hace

Esta web usa cookies.