Executando verificação de segurança...
2

Criando estruturas de banco de dados (DTR) com o dbdiagram.io

Durante muitos anos, sempre que tenho a necessidade de criar uma estrutura para banco de dados, envolvendo tabelas e seus relacionamentos, eu lembro do dbdiagram.io

Acessando o link acima, temos a demostração básica do que a app é capaz de fazer.

Do lado ESQUERDO, temos uma representação em texto das tabelas. E do lado DIREITO, o diagrama. O que todos nós devs adoramos fazer? Escrever código! E o dbdiagram foi feito especialmente para nós

Começando

Você pode criar uma conta para assim poder guardar seus diagramas, ou começar imediatamente a criar um diagrama clicando no botão go to app. Ao clicar nele, um diagrama é prontamente criado. Vamos então "limpar" esse diagrama da melhor forma, selecionando todo o texto à esqueda da tela e apertando delete (ou backspace se for for contra as regras da sociedade)

Temos agora um diagrama vazio, no limbo:

Criando o tabnews

Como o site é open source, podemos dar uma 👀 na sua estrutura de tabelas e fazer um diagrama de tabelas. Fica aqui o "dever de casa" para você fazer o diagrama e mandar um PR para o repositório, assim é possível ver de forma visual a estrutura das tabelas. Bora lá!

Ao acessar o primeiro migration que cria a tabela users, podemos extrair os seguintes campos:

  • id (uuid)
  • username (varchar)
  • email (varchar)
  • password (varchar)
  • features (varchar)
  • created_at (date)
  • updated_at (date)

Vamos então criar essa tabela no dbdiagram:

Asssim que começamos a escrever a estrutura da tabela, o seu diagrama começa a ser desenhado. Eu nao vou colar aqui a estrutura em modo texto, para que você mesmo possa digitar e ver como a ferramenta funciona.

O segundo migration cira uma tabela chamada activate_account_tokens com os seguintes campos:

image

Novamente deixo apenas a imagem para que você possa digitar e ver a tabela sendo criada. Como podemos ver, existe um relacionamento um para muitos de users para activate_account_tokens. Ou seja, um user pode ter vários activate_account_tokens. Para representar isso no diagrama, usamos o atributo ref, da seguinte forma:

Table activate_account_tokens {
   user_id uuid [ref: > users.id]
}

Veja que no campo user_id, adicionarmos a nomenclatura [ref: > users.id] configurando assim o relacionamento. O resultado é exibido a seguir:

Para representar um relacionamento "um para um", ao invés do > usamos -. Experimente trocar lá e ver o que acontece.

De posse desse diagrama até agora, você já consegue olhar os outros migrations e montar a sua versao DTR do tabnews! Fica como dever de casa postar como ficou nos comentários! A verão mais bonita ganha o selo delicinha do @filipedeschamps

A versão free suporta até 10 diagramas, e exportar para png/mysql. A documentação contém tudo que vc precisa saber para criar opções mais avançadas de diagramas

Carregando publicação patrocinada...