Saltar al contenido

Laravel Eloquent: carga ansiosa de múltiples relaciones anidadas

Bienvenido a nuestro sitio web, aquí vas a encontrar la resolución que buscas.

Solución:

Tu puedes hacer

 $books = AppBook::with('author.contacts','author.publishers')->get();

La documentación de Laravel sobre carga ansiosa recomienda enumerar las relaciones en un array como sigue:

$books = AppBook::with(['author.contacts', 'author.publishers'])->get();

Puedes tener tantas relaciones como desees. También puede especificar qué columnas deben incluirse para una relación como esta:

//only id, name and email will be returned for author
//id must always be included
$books = AppBook::with(['author: id, name, email', 'author.contacts', 'author.publishers'])->get();

También puede agregar restricciones de la siguiente manera:

$books = AppBook::with(['author: id, name, email', 'author.contacts' => function ($query) 
                                          $query->where('address', 'like', '%city%');
                                     , 'author.publishers'])->get();

Sección de Reseñas y Valoraciones

Si posees algún titubeo y capacidad de beneficiar nuestro enunciado eres capaz de añadir una glosa y con mucho gusto lo estudiaremos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *