Retour à la leçonMission
Mission : un email de confirmation envoyé pour une commande jamais validée
Diagnostiquer pourquoi un email a été envoyé pour une transaction finalement annulée, et déplacer l'effet de bord au bon moment du cycle de vie.
Contexte
Un listener @event.listens_for(Commande, "after_insert") envoie un email de confirmation dès qu'une Commande est insérée en base. Un client se plaint d'avoir reçu un email de confirmation pour une commande qui n'apparaît finalement jamais dans son historique : une erreur métier plus loin dans le même bloc a déclenché un rollback() après l'insertion.