Tal como já referimos, o Django é uma framework Web de alto nível que possibilita o desenvolvimento rápido de soluções. Uma das características TOP desta framework são os templates (Django template language – DTL). Saiba como funcionam.
Os templates Django são uma componente fundamental da framework web Django. Estes templates são utilizados para gerar conteúdo HTML dinâmico. Os templates Django usam uma sintaxe muito simples que permite aos programadores inserir código muito semelhante ao Python diretamente dentro do ficheiro HTML, facilitando assim a criação de páginas web dinâmicas.
Breve visão geral dos templates Django
#1 – Sintaxe do Template: Os templates Django utilizam etiquetas especiais e filtros para executar código Python dentro dos templates HTML. Estes incluem:
- Variáveis: estas estão dentro da seguinte estrutura {{ }}. São utilizadas para mostrar dados dinâmicos no template.
- Exemplo: O meu primeiro nome: {{ first_name }}. O Meu último nome {{ last_name }}.
- Tags do Template: Representadas dentro de {% %}, utilizadas para fluxo de controlo, loops, condições, etc;
- Exemplo: {% if user.is_authenticated %}Olá, {{ user.username }}.{% endif %}
- Filtros: Utilizados para modificar a saída das variáveis nos templates. Por exemplo, formatar datas ou números.
- {{ my_date|date:”Y-m-d” }}
#2 – Herança de Templates: Os templates Django suportam também herança. Tal característica permite criar um template base com elementos comuns (como cabeçalhos e rodapés) e estender ou substituir blocos específicos em templates filhos.
#3 – Contexto: Ao renderizar um template, é passado um contexto que contém os dados a serem utilizados no template. As variáveis definidas dentro do template podem aceder a esses dados.
#4 – Carregamento de Templates: Os templates Django podem ser carregados de várias fontes, incluindo ficheiros no disco, strings ou até mesmo de uma base de dados.
#5 – Ficheiros Estáticos e de Media: Embora os templates Django permitam trabalhar essencialmente com conteúdo dinâmico, também podem incluir referências para ficheiros estáticos (como CSS, JavaScript ou imagens) utilizando tags de template como {% static %} e {% media %}.
#6 – Carregamento e Cache de Templates: O Django fornece um mecanismo de carregamento de templates eficiente, e também oferece opções de cache para melhorar o desempenho.
Vamos a um exemplo simples
Para criar uma simples app com recurso a template, usem os seguintes passos
#1 – Criar um projeto
django-admin startproject mytemplate
#2 – Criar app
python3 manage.py startapp app
#3 – Criar template em \app\templates\meu_template.html
#4 – Criar urls.py em app
#5 – Criar views.py em app
#6 – Criar urls.py dentro da pasta do projeto
Depois de tudo programado, basta que executem o comando python3 manage.py runserver e depois acedam a http://127.0.0.1:8000/app/. O resultado deverá ser o seguinte:
E está feito. Como viram o Django é bastante flexível, facilitando a integração de Python dentro dos templates HTML.