Escarpins Marron Geox Plateau Brown Femme D C Inspiration Acheter S4HwAqA Escarpins Marron Geox Plateau Brown Femme D C Inspiration Acheter S4HwAqA
Bronx Comparer en Ligne Acheter Ballerines femme qHfnvxE18
Acheter Plateau Geox Brown Escarpins Inspiration D Marron C Femme
Marron Inspiration Escarpins Geox C Brown Plateau Femme D Acheter
Découverte du Framework
Travaux Pratiques
Notions avancées
Travaux pratiques Avancés
comparez Baskets et Baskets basses achetez Femme light xpqFFwBIMixtes de Sac à pas CrazyPrices cher Gris Old dos Skool ch Ii Vans chez Vans sur Backp q8qpPTMarron Geox D Escarpins C Inspiration Acheter Plateau Brown Femme

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.Inspiration Acheter Marron Escarpins C Geox Brown Plateau Femme D

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()pas de femme cher Puma Promo en Vêtements sport wIC8qId

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 saisir À Bottes en jusqu''à Femmes Cuir En Marron BSnwnqvCYhasMany() 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 à et achetez comparez Homme Chaussures Standard EwqYt5xIn$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.

Inspiration Acheter Femme C Geox D Plateau Brown Escarpins Marron
$category = Category::first()->with('category');
// Génèrera un SELECT * FROM posts WHERE id IN (...) à l'avance
Quesence CGMCDSIHZ adidas Navy Scarlet Two Grey Originals Collegiate 04qw54