Bonsoir,
Je développe actuellement une application e-commerce, et je me retrouve confronté à un problème de dépendences.
J'explique: Lorsque le client passe une commande, celle-ci est enregistrée en utilisant les id des produits commandés, id addresse, id du mode de livraison, etc. Une suppression d'un de ces éléments et c'est la catastrophe, c'est pourquoi j'utilise le moteur InnoDb qui gère les clés étrangères, car on est jamais à l'abris d'un bug.
Vient ensuite le problème de la modification: Si on modifie par exemple le nom d'un produit déjà commandé, la modification se reflète dans la commande.. J'aimerais règler le problème de manière élégante, maintenable et sécurisé.
J'ai pensé à quelques solutions:
- Checker le tout à la main, cette solution est lourde niveau code, et le moindre oublie peu devenir très méchant.
- Ré-enregistrer les données dans la commande (on duplique donc tous les articles pour chaque commande, ce qui me semble plutôt lourd)
- Ajouter un attribut booléen pour chaque produit, addresse, etc. qui indique si le produit est utilisable ou non (Lors d'une modification, on passe le produit actuel en "non-utilisable", et on en créer un nouveau).
J'aimerais savoir si une de ces solutions vous semble valable, ou si vous en voyez une autre à laquelle je n'ais pas pensé.
Merci![]()
Partager