fastapi-do-zero icon indicating copy to clipboard operation
fastapi-do-zero copied to clipboard

Revisão final aula 04 - Configurando o Banco de Dados e Gerenciando Migrações com Alembic

Open dunossauro opened this issue 1 year ago • 0 comments

A aula não segue uma ordem gradual dos acontecimentos. A aula vai e volta em diversos cenários.

ORM -> 12 Fatores -> ORM -> engine/session -> modelo de dados -> Teste -> Configuração -> Alembic.

Isso complica BASTANTE o andamento da aula, pois os conceitos são travados e distanciados da aplicação. Uma grande ideia seria seguir de forma gradual. Por exemplo:

  • O que é um ORM: explicar os conceitos básicos
  • O SQLAlchemy: Afunilando o tópico anterior
    • Modelo de dados: Aqui definimos como será a tabela do banco de dados
    • Aqui explicar vamos entender os conceitos do SQLAlchemy nos baseando em um teste (Não montar a fixture aqui)
    • A engine: explicar como se comunicar com o banco de dados e usar em memória!
    • Criação da tabela usando os modelos de Base
    • A session: explicar o básico do funcionamento da Sessão
      • Aqui explicar o básico sobre os comandos da sessão:
        • .add
        • .commit
      • Buscando os dados no banco de dados
        • Falar sobre da função select select
        • Mostrar o print do select(User)
        • O método .select() -> Mostrar o print novamente
        • session.scalar: Mostrar que ele executa a busca real no banco
    • Aprimorando o sistema de testes (montar a fixture aqui)
  • Configuração do ambiente do banco de dados
    • 12 fatores
    • pydantic_settings
      • Instalação
      • Schema de configuração
    • arquivo .env
  • Migrações
  • ...

Esses são os pontos levados em consideração em relação à leitura em #67

Essa issue também deve levar em consideração os pontos já anotados em #67

dunossauro avatar Feb 05 '24 04:02 dunossauro