Django - Visão Geral

Como você já sabe, Django é uma estrutura da web Python. E como a maioria dos frameworks modernos, Django suporta o padrão MVC. Primeiro, vamos ver o que é o padrão Model-View-Controller (MVC), e então veremos a especificidade do Django para o padrão Model-View-Template (MVT).

Padrão MVC

Ao falar sobre aplicativos que fornecem UI (web ou desktop), costumamos falar sobre a arquitetura MVC. E como o nome sugere, o padrão MVC é baseado em três componentes: Model, View e Controller. Verifique nosso tutorial MVC aqui para saber mais.

DJANGO MVC - Padrão MVT

O Model-View-Template (MVT) é ligeiramente diferente do MVC. Na verdade, a principal diferença entre os dois padrões é que o próprio Django cuida da parte do controlador (código de software que controla as interações entre o modelo e a visualização), nos deixando com o modelo. O template é um arquivo HTML misturado com Django Template Language (DTL).

O diagrama a seguir ilustra como cada um dos componentes do padrão MVT interage entre si para atender a uma solicitação do usuário -

O desenvolvedor fornece o Modelo, a visualização e o modelo e então apenas mapeia para uma URL e o Django faz a mágica para servi-lo ao usuário.