Bonjour,
Je travaille sur un site de vente en ligne sur mesure (produits particuliers, ça ne rentre pas vraiment dans les cases d'un prestashop ou d'un sylius). C'est en Symfony 6.
Mon problème.. J'avais commencé par faire une table de commande assez classique, liée à un membre, adresse de livraison, adresse de facturation, des "order items", eux mêmes liés à des "products"..
Mais je me dis que si un membre passe une commande, puis qu'un admin modifie le prix d'un produit, ou le membre modifie son adresse de livraison, par exemple, ça va casser l'intégrité de la commande.
Du coup j'ai commencé à ajouter des champs dans mon entité commande pour stocker toutes les informations au moment de la commande plutôt que d'avoir des relations entre les tables.. Ça solutionne une partie de mon problème.. Mais après pour retrouver les informations, ça va être un poil pénible vu que ça va être une liste de champs, au lieu d'objets bien définis.. (et mes templates fonctionnent beaucoup avec des appels de fragments et une seule variable passée, l'objet à rendre, par exemple pour les blocs d'adresse).
Du coup, je me demandais si il ne serait pas plus simple de cloner la ligne d'adresse / membre / produit / etc.. et de lier ma commande à ces objets clonés .. et marqués avec un champ "invisible" par exemple.. Ou alors carrément dans une table séparée.. ?
Qu'en pensez vous ?
Merci !
Partager