Je souhaite créer un panier d'achat dans une boutique en ligne. J'ai deux façons de concevoir un panier d'achat, mais je ne sais pas lequel est le meilleur.
Solution 1: créez un tableau comme ci-dessous:
de cette façon, pour chaque produit pour un utilisateur, ajoutez une nouvelle ligne.
note UserId et ProductId sont uniqe
Solution 2:
utiliser deux tables: panier, cartItem
De cette façon, pour chaque utilisateur, créez simplement un enregistrement dans Shoopingcart
Table.
Quel est ton opinion?
L'option 2 est la solution canonique pour le modèle Order/OrderItem, qui est essentiellement un panier d'achat. Il permet au panier d'être traité dans son ensemble et distinct d'un autre panier qui peut être soumis par le même utilisateur arbitrairement peu de temps après. La réalisation peut être enregistrée sur un panier plutôt que sur chaque article individuellement, si c'est ce qui est requis.