DEV Community

Cover image for Database Seed - MarketPlace - #1
Marcio Policarpo
Marcio Policarpo

Posted on

3

Database Seed - MarketPlace - #1

Um pouco diferente do que estamos habituados, neste artigo vou mostrar como criar dados de forma relacional como acontece no mundo real.


Introdução

A ideia é montar uma espécie de marketplace, com clientes, lojas e produtos, onde um cliente conectado à plataforma tem a possibilidade de comprar qualquer produto em qualquer uma das lojas disponíveis.

Como este projeto é voltado totalmente para o back-end não desenvolvi nenhuma página web para visualização e interação com usuário. Tomei esta decisão para evitar que o projeto ficasse grande sem contar que acabaria fugindo do objetivo do artigo.

Por essa razão, busquei criar um cenário que fosse o mais fiel possível ao ambiente real, com vários usuários comprando vários produtos de diversos vendedores.

Esse pensamento deu origem ao diagrama mostrado a seguir, onde é possível ver como as entidades se relacionam entre si.

😁

Image description

O projeto em si é pequeno mas devido à complexidade na preparação do ambiente optei por dividí-lo em 5 partes sendo esta a primeira, onde faço uma introdução.


Na segunda parte vamos nos concentrar nas migrações, explicando alguns conceitos básicos e detalhando o relacionamento entre as tabelas.


Já a terceira parte será destinada a criação dos modelos objeto-relacional.

Esta parte é a mais importante porque a forma como implementaremos as classes terá impacto direto nas consultas que serão criadas.


Em seguida, na parte 4 deste artigo veremos como implementar e fazer uso das classes factory.

Ainda nesta parte mostro como criar dados aleatórios relacionando as informações de forma consistente.


E por fim, criaremos algumas rotas com o intuito de consultar as informações geradas no banco de dados.


Nos vemos em breve.
😊

AWS Security LIVE!

Join us for AWS Security LIVE!

Discover the future of cloud security. Tune in live for trends, tips, and solutions from AWS and AWS Partners.

Learn More

Top comments (1)

Collapse
 
marciopolicarpo profile image
Marcio Policarpo

Yup. I'm happy to be able to contribute. ;)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay