En ce qui concerne l'utilisation d'un mandataire de référence
D'après mes investigations, cette solution n'est que partiellement satisfaisante, comme suit :
Oui, vous n'avez pas besoin de récupérer de manière proactive l'enregistrement lié (parce que vous créez un enregistrement proxy), mais lorsque vous videz (validez) la transaction de mise à jour, elle exécute toujours d'abord une instruction de sélection pour récupérer l'enregistrement lié, puis effectue uniquement la mise à jour (en une seule fois dans la base de données).
Cette opération est inefficace et ne devrait pas être nécessaire (nous avons l'identifiant de la clé étrangère, pourquoi récupérer l'enregistrement ?)
Ainsi, bien qu'il ne s'agisse pas d'une solution complète, vous bénéficiez d'une seule connexion à la base de données (ce qui est bien) et d'un code légèrement simplifié.
Je ne suis pas sûr qu'il existe une solution à ce problème pour le moment... ?
Espérons que les corps de doctrine mettront à jour dans le futur et si nous utilisons la logique du proxy, nous devrions bénéficier d'une amélioration automatique des performances...