Bonjour, je développe actuellement une application en PHP en utilisant l'ORM Doctrine 2.
En construisant mon schéma j'ai utilisé des tables d'intersections pour lier une table avec d'autres.

Table1
Table2
Table3 <= table "partagée"

Table1_has_Table3 <= table d'intersection
Table_has_Table3 <= table d'intersection

A présent j'aimerai écrire les associations dans mes entités mais je me rend compte qu'il n'est pas possible de faire un ManyToOne/OneToMany en passant par un JoinTable (possible sous hibernate par exemple).
La "feinte" que j'utilise est de créer une entité pour chaque table d'intersection, de créer un OneToMany/ManyToOne entre Table1 et Table1_has_Table3 puis de créer une relation OneToOne entre Table1_has_Table3 et Table3.

En plus de me demander un peu de boulot le comportement n'est pas bon, lorsque je récupére un objet de type Table3 il effectue des requêtes pour récupérer tous les OneToOne vers les tables d'intersections sans aucune intervention de ma part.

Pour résumer ça marche mais c'est pas top, avez vous une meilleure solution sans changer de schéma?

Merci!