Lien de parenté exemple

Après avoir trouvé les ID utilisateur correspondants, ils sont utilisés pour interroger la table des publications. Vous pouvez utiliser la notation «dot» pour exécuter une requête sur une relation imbriquée. À l`aide de relations polymorphes, vous pouvez utiliser une table de commentaires unique pour ces deux scénarios. Lorsque vous avez autant de champs liés, il est important d`utiliser les champs de recherche et de cumul à votre avantage pour minimiser la quantité d`entrée de données que vous devez effectuer. La table des éléments de ligne de commande prend les liens de la table des produits et de la table des commandes des clients, ainsi que la quantité de chaque produit, pour créer des valeurs de champ primaire uniques pour chacune des lignes. Supposons que vous avez une liste de concurrents dans une compétition de patinage artistique. Par exemple, vous devez peut-être insérer un nouveau commentaire pour un modèle de publication. Si cela semble abstrait, examinons un exemple spécifique: Supposons que vous avez une liste d`étudiants et une liste de classes. Lorsque vous accédez aux enregistrements d`un modèle, vous souhaiterez peut-être limiter vos résultats en fonction de l`existence d`une relation. Toutefois, vous êtes libre de personnaliser le nom de cet attribut pour mieux refléter son objectif dans votre application. Pour définir l`inverse d`une relation plusieurs-à-plusieurs, vous passez un autre appel à Appartenstomany sur votre modèle connexe. Les notes des élèves dans leurs classes et les temps qu`ils ont pris les classes peuvent être considérés comme des attributs des relations entre les élèves et les classes dans lesquelles ils se sont inscrits.

Les modèles de pivot plusieurs-à-plusieurs personnalisés doivent étendre la classe IlluminateDatabaseEloquentRelationsPivot tandis que les modèles de tableau croisé dynamique polymorphes plusieurs-à-plusieurs doivent étendre la classe IlluminateDatabaseEloquentRelationsMorphPivot. Enfin, les entités peuvent également avoir une relation plusieurs-à-plusieurs. Les conventions clés étrangères éloquent typiques seront utilisées lors de l`exécution des requêtes de la relation. Chaque personne n`a qu`un seul numéro de sécurité sociale, et chaque numéro de sécurité sociale est lié à une seule personne. Vous pourriez juste faire une table d`étudiants et une table de classes, les relier ensemble, et le laisser à cela. Si vous faisiez une base aérienne représentant une relation un-à-plusieurs entre une liste de musées et une liste d`œuvres d`art, vous pourriez mettre chacune de ces listes dans une table de musées et une table d`œuvres. Parfois, vous pouvez avoir besoin de charger plusieurs relations différentes en une seule opération. Un exemple d`une telle relation est un utilisateur avec de nombreux rôles, où les rôles sont également partagés par d`autres utilisateurs. Si c`est le cas, vous souhaiterez peut-être renommer votre accesseur de table intermédiaire à l`abonnement au lieu de pivot.

Le premier argument passé à la méthode hasOne est le nom du modèle associé. La relation Appartensto vous permet de définir un modèle par défaut qui sera renvoyé si la relation donnée est null. Si vous souhaitez compter le nombre de résultats d`une relation sans les charger réellement, vous pouvez utiliser la méthode withCount, qui placera une colonne {relation} _ count sur vos modèles résultants. Ensuite, avec une formule, vous pouvez calculer le coût total par ligne. Une fois que la relation a été définie, nous pouvons accéder à la collection de commentaires en accédant à la propriété de commentaires.