Como estruturar os diretórios/pastas no Flask

O Flask é um framework de desenvolvimento web bastante popular por ser simples e adequado para projetos pequenos, diferente do Django que é mais robusto e ideal para projetos grandes ou que vão necessitar de manutenção constante.

Um projeto Flask pode ser organizado de uma porção de maneiras dependendo da complexidade do projeto, mas nesse tópico vou abordar a estrutura básica, por ser mais comum e mais organizada.
Então vou descrever a estrutura de pastas comum, explicando a função de cada diretório e subdiretório.

Estrutura Básica

app

Esse diretório é o pacote principal da sua aplicação onde a maior parte do código vai ficar

  • init.py : Componente chave dos pacotes Python. É necessário para que o Python trate os diretórios que contêm o ficheiro como pacotes.
  • routes.py : Define as rotas(URLs) pra funções de visualização das requisições.
  • models.py : Define os modelos de dados, serve de base para a criação de tabelas no banco de dados e pra gerencias as relações entre elas.
  • views.py : Contém as funções de visualização que são chamadas pelas rotas
  • forms.py : Define formulários pra entrada de dados no Front-end.

static

Contém os arquivos estáticos como CSS, Javascript e imagens.

  • css : armazena os arquivos de estilo de página.
  • js : Armazena os scripts Javascript.
  • images : Armazena as imagens usadas no site.

templates

Contém os arquivos HTML que vão ser renderizados pelo servidor

  • index.html : Página inicial do site.
  • layout.html : um template base que outros templates podem estender.

config.py

  • armazena as configurações da aplicação(chaves secretas, informações do banco de dados, etc.)

run.py

  • Ponto de partida. É o script que inicializa o app e coloca em execução
1 curtida