Salut tout le monde ;
pouvez-vous m'expliquer quand et comment utiliser la relation hasAndBelongsToMany ; un exemple explicatif serait le bienvenu.
Merci d'avance.
Salut tout le monde ;
pouvez-vous m'expliquer quand et comment utiliser la relation hasAndBelongsToMany ; un exemple explicatif serait le bienvenu.
Merci d'avance.
Je crois d'après la recherche que j'ai effectué qu'elle est utilisée pour représenter une relation (n à n) entre deux tables.
Salut, c'est tout a fait ça .
Une relation hasMany est exclusive c'est a dire qu'un objet A qui a plusieurs sous objets B, ces sous objets B sont exclusivement la propriétés de l'objet A.
Dans la relation HABTM, un objet A qui a plusieurs sous objets B, un même objets C peut aussi avoir les sous objets B. Donc les objets B peuvent avoir comme parents A ou/et C
Je vous remercie pour votre réponse ,
mais pouvez me donner un exemple sur ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Dans la relation HABTM, un objet A qui a plusieurs sous objets B, un même objets C peut aussi avoir les sous objets B. Donc les objets B peuvent avoir comme parents A ou/et C
Merci d'avance.
Imaginons des poèmes qui peuvent avoir plusieurs thématique :
Admettons le poème : "Soleil vert" a comme thématiques "amour","paysage"
le poème "Coeur de crystal" a comme thématiques "amour", "trahison"
la thématique amour a comme "parents" Soleil vert et/ou Coeur de Crystal
La grosse différence se trouve au niveau des tables :
Pour une relation hasmany, on prend l'exemple des factures clients , un client a plusieurs facture mais une facture appartient a un seul client , du coup l'id client se trouve dans la table factures :
Client
------
- id
- nom
Facture
-------
- id
- id client
- montant
Dans le cadre d'une relation HABTM imaginons le même exemple mais une facture peut appartenir a plusieurs clients, nous sommes dans une relation n-n cela nécessite donc une table de liaison :
Client
------
- id_client
- nom
Facture
-------
- id_facture
- montant
client-facture
------------
- id_client
- id_facture
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager