馃摉 Leer datos desde Eloquent
Una de las ventajas m谩s poderosas de Eloquent ORM es su capacidad para leer datos de la base de datos de forma sencilla, legible y eficiente, sin escribir consultas SQL manuales.
馃攳 1️⃣ Obtener todos los registros
El m茅todo all()
recupera todos los registros de la tabla asociada al modelo:
use App\Models\Producto; $productos = Producto::all(); foreach ($productos as $producto) { echo $producto->nombre . ' - ' . $producto->precio . '<br>'; }
馃挕 Retorna una colecci贸n de modelos, lo que permite iterar f谩cilmente sobre los resultados.
馃敘 2️⃣ Obtener un registro por su ID
Para obtener un solo registro por su ID, se usa el m茅todo find()
o findOrFail()
:
$producto = Producto::find(1); echo $producto->nombre; // Si no existe, lanza un error autom谩ticamente $producto = Producto::findOrFail(99);
馃摌 findOrFail()
lanza una excepci贸n si el registro no existe, 煤til para manejar errores 404 autom谩ticamente.
馃幆 3️⃣ Filtrar resultados con condiciones
Usa los m茅todos where()
y first()
para aplicar filtros personalizados:
$producto = Producto::where('precio', '>', 50)->first(); $productos = Producto::where('stock', '<', 20) ->orderBy('precio', 'desc') ->get();
馃挕 Puedes encadenar m茅todos como orderBy()
, limit()
o get()
para construir consultas m谩s complejas.
馃摝 4️⃣ Seleccionar columnas espec铆ficas
Si no necesitas todos los campos, puedes seleccionar columnas concretas con select()
:
$productos = Producto::select('nombre', 'precio') ->where('stock', '>', 0) ->get(); foreach ($productos as $item) { echo $item->nombre . ' cuesta ' . $item->precio . '€<br>'; }
馃挕 Esto mejora el rendimiento, ya que Laravel solo recupera los campos necesarios desde la base de datos.
⚙️ 5️⃣ Consultas avanzadas
Puedes realizar consultas m谩s elaboradas combinando m茅todos de Eloquent:
$productos = Producto::whereBetween('precio', [20, 100]) ->whereNotNull('stock') ->orderBy('nombre') ->take(5) ->get(); $total = Producto::where('stock', '>', 0)->count();
馃搳 Estas consultas se traducen autom谩ticamente a SQL optimizado por Laravel.
✅ Conclusi贸n
- 馃摉 Eloquent simplifica la lectura de datos mediante m茅todos claros y expresivos.
- 馃攳 Usa
all()
para obtener todos los registros ofind()
para buscar por ID. - 馃幆 Aplica condiciones con
where()
y ordena conorderBy()
. - ⚙️ Combina m煤ltiples m茅todos para construir consultas complejas de manera sencilla.
En la pr贸xima lecci贸n aprenderemos c贸mo actualizar registros con Eloquent de forma r谩pida y segura.
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias