MBO-SD : De site voor software developer in het MBO
Relaties in Symfony
Wat zijn relaties?
            Als je een goede Entity Relation Diagram (ERD in het kort) hebt van jouw applicatie zie je vaak
            dat er lijntjes lopen tussen entiteiten (of Models). Deze lijntjes geeft aan dat de entiteiten
            een relatie hebben met elkaar. Een aantal voorbeelden van relaties:
        
- Een auteur met boeken
- Een student met een klas
- Een dokter met patienten
- Een film met een categorie
Soorten relaties
            Afhankelijk van hoe de pijl in jouw ERD loopt heb je verschillende soorten relaties. (Let op dat
            we relaties altijd in het Engels aanduiden.
        
One to Many
            Vertaald een op veel. Een Auteur heeft/ kan meerdere boeken hebben geschreven. Ook al heeft een Auteur maar
            een (of geen) boeken geschreven, de relatie tussen de Auteur en Boek blijft One To Many
        
Many to One
            Als je de One To Many omdraait dan krijg je een Many to One. Uit bovenstaand voorbeeld
            kan je ook zeggen dat alle boeken een auteur hebben (en dit moet altijd). Je spreekt dan over een One to Many
        
One to One
            In sommige gevallen wil je een een op een koppeling maken, dit doe je alleen als er een goede reden voor is, anders kan je
            beter alle data in 1 tabel stoppen. Een voorbeeld van One to One is bij een bestelling waarbij er meerdere
            adressen zijn, bijvoorbeeld een leveringsadres en een factuuradres. Beide zijn van het type adres en horen in een tabel
            met adresgegevens. De bestel tabel (of Order entity) heeft dan wel 2 properties (velden) nodig, een voor leveringsadres en
            een voor factuuradres.
        
Many to Many
            De meest lastige vorm is een Many to Many, dit omdat een standaard database dit technisch niet kan en
            Symfony op de achterkant een koppeltabel maakt tussen de twee Entiteiten. Een voorbeeld hiervan is met boeken en
            schrijvers (auteurs). Er zijn boeken die door meerdere auteurs geschreven kunnen worden en auteurs kunnen meerdere
            boeken schrijven. Dit is een voorbeeld van een Many to Many waarbij er een koppeltabel gemaakt wordt
            tussen beide Entities
        
