Bonjour à tous,
J'ai deux entités liées par une relation ManyToMany. Disons des catégories et des users.
Certaines de mes catégories contiennent énormément de users (10000 voire potentiellement plus).
Lorsque je charge une catégorie, je ne peux pas inclure la collection toute entière : trop lourd, impossible de tout charger.
Donc je suis passé par plusieurs moyens détournés pour compter le nombre de users dans une catégorie, vérifier si un user fait partie d'une catégorie etc.
Par contre, la suppression d'un user de cette catégorie pose problème car Doctrine tient à initialiser toute la collection pour pouvoir faire la diff de la collection et persister correctement les changements.
Quelle solution me permettrait de supprimer un user de ma catégorie sans charger la collection complète dans mon objet catégorie ?
J'exclus d'office les deux solutions suivantes :
- Faire une entité correspondant à ma table intermédiaire.
- Changer l'appartenance de la relation ManyToMany pour pouvoir supprimer depuis la collection de catégorie dand user.
Solution hasardeuse envisagée pour le moment : une requête native qui tape directement dans la table intermédiaire.
Qui dit mieux ?
Merci ++
Partager