Templates
HTML base
No handout sobre a estrutura do HTML vimos que existem alguns elementos obrigatórios em qualquer documento HTML. Além desses elementos, vimos nos princípios CRAP e na heurística 04 que é importante repetirmos elementos visuais entre as páginas do nosso sistema para criarmos uma consistência interna. Por exemplo, todas as páginas podem ter o mesmo menu na parte superior e o mesmo rodapé no final de todas as páginas.
Uma possível implementação é repetirmos esses elementos em todos os nossos templates. Porém, há uma maneira de evitar essa repetição de código:
Exercício 1
Mas por que dois arquivos? Para que eles servem?
O arquivo base.html
possui o código HTML que vai se repetir em todas as páginas. No index.html
nós usamos o {% extends "notes/base.html" %}
para indicar para o Django que nós queremos usar o base.html
como base. Então modificamos apenas os blocos necessários. O que está entre o {% block content %}
e {% endblock %}
no index.html
substituirá esse mesmo bloco no base.html
. Você pode dar o nome que quiser para os seus blocos.
Ok, mas como eu uso isso?#
Vamos lá!
Exercício 2
Exercício 3
Resposta
Os itens do dicionário de contexto são disponibilizados como variáveis para o template. A chave é o nome da variável (portanto não devemos usar as aspas) e o valor é o valor da variável.
Como sempre, antes de continuar, vamos para mais uma revisão!