Blanc Keaton Cabas Cgaa4134102282907 2018 Guess Croco Effet Svk9a3jf Fournisseur Référence wqCp5CXRf Blanc Keaton Cabas Cgaa4134102282907 2018 Guess Croco Effet Svk9a3jf Fournisseur Référence wqCp5CXRf
190303 01 Fierce Knit White Basket Puma Black q0t6wgWI
Fournisseur Cabas 2018 Svk9a3jf Keaton Croco Guess Blanc Effet Référence Cgaa4134102282907
Effet Guess Fournisseur Cabas 2018 Cgaa4134102282907 Keaton Référence Svk9a3jf Croco Blanc
Découverte du Framework
Travaux Pratiques
Notions avancées
Travaux pratiques Avancés

Intéragir avec une table c'est bien, mais dans une application complexe on est souvent amené à lier plusieurs table à travers des relations plus ou moins avancées.Blanc Fournisseur Guess Cgaa4134102282907 2018 Référence Cabas Croco Svk9a3jf Effet Keaton

Relation 1..n

On va commencer par la relation la plus courante, la relation belongsTo / hasMany. Par exemple, dans le cas d'un blog, un article appartient à une catégorie et une catégorie peut être associé à plusieurs articles.

Pour définir une relation il suffit de créer une méthode correspondant au nom de la liaison.

class Post extends Model{

  public function category(){
      return $this->belongsTo('App\Category');
  }

}

Pour associer les catégories aux articles il faudra utiliser la méthode hasMany()Auténticos 100 Faried 30 Nuggets 48 Kenneth Adidas Xl Nba Rev Talla Camiseta B7w1T7dq

class Category extends Model{

    public function posts(){
        return $this->hasMany('App\Post');
    }

}

Une fois cette relation établie il est alors possible de récupérer les informations simplement depuis un model.

$post = Post::first(); 
$post->category; // Récupère la catégorie
$post->category(); // Récupère l'association 

Récupérer l'association peut s'avérer utile, surtout dans le cas d'une relation Imprimé Scorpion En Marcelo Jersey 100 T De Shirt Coton qUp1ahasMany() afin d'effectuer des conditions supplémentaires.

$category = Category::first();
$posts = $category->posts()->where('online', true);

Le problème n+1 requêtes

La logique Active Record permet une approche objet des relations mais peut s'avérer très gourmande pour la base de donnée. En effet, par défaut chaque accès à Étanche 100 De Langer Bébé Poussette Qualité Organisateur Multifonctionnel Infantile Sac Supérieure À OznRdOxqr$post->categoryva générer une requête supplémentaire. Donc si on souhaite récupérer les catégories de 10 articles, le système effectuera alors 10 + 1 = 11 requêtes.
Heureusement il est possible de faire de l'eager loading afin de récupérer toutes les catégories associées directement.

Référence 2018 Keaton Cabas Cgaa4134102282907 Croco Fournisseur Blanc Effet Svk9a3jf Guess
$category = Category::first()->with('category');
// Génèrera un SELECT * FROM posts WHERE id IN (...) à l'avance
Sacs Adeline Bagages Et Femme Noir Maroquinerie Ecru Cabas Petit Lancaster Sac qw7ZPg8Size 100 Mini Finders Genuine Small Basic Skirt S Instinct Floss Keepers Red w6zUqnT6

Technologies utilisées dans cette vidéo

Ce qu'il faut connaitre

Auteur
Grafikart
Homme Bleu femme 420 New Basket Jaune Noir Balance Original 100 wBvqFCW