Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como armazenar dados complexos de produtos/pedidos no MySQL?


Depende dos seus objetivos para o seu carrinho. Por exemplo, você deseja permitir compras de convidados? ou seja, onde um usuário não precisa fazer login para fazer uma compra?

A imagem anexada é um design que tenho trabalhado e é assim:

  1. Um visitante seleciona produtos do site e os adiciona a um carrinho de sessão (apenas um local para armazenar temporariamente os produtos, suas quantidades e seus preços etc.)

  2. Quando o cliente estiver pronto para fazer o check-out, criamos o pedido, a pessoa do pedido e o person_address (onde o produto deve ser entregue) e adicionamos os itens à tabela order_item. Todas essas informações são adicionadas pelo cliente na página de checkout.

  3. O passo final é então oferecer os métodos de pagamento:paypal, cartão de crédito, etc.

O que eu gosto neste design é que os usuários não têm obrigação de se registrar conosco. Order_person atua como uma espécie de interface entre usuários e pedidos. Se nos registrarmos, simplesmente vinculamos order_person à tabela de usuários...

Também incluí um exemplo de front-end da página de checkout.