Primero, vamos a recordar algunos términos presentados en el Capítulo 4:
Una plantilla es un documento de texto, o un string normal de Python marcado con la sintaxis especial del lenguaje de plantillas de Django. Una plantilla puede contener etiquetas de bloque (block tags) y variables.
Una etiqueta de bloque es un símbolo dentro de una plantilla que hace
algo. Esta definición es así de vaga a propósito. Por ejemplo, una
etiqueta de bloque puede producir contenido, servir como estructura de
control (una sentencia if
o un loop for
), obtener contenido de la
base de datos, o habilitar acceso a otras etiquetas de plantilla.
Las etiquetas de bloque deben ser encerradas por {%
y %}
:
{% if is_logged_in %}
Thanks for logging in!
{% else %}
Please log in.
{% endif %}
Una variable es un símbolo dentro de una plantilla que emite un valor.
Las etiquetas de variable deben ser rodeadas por {{
y }}
:
My first name is {{ first_name }}. My last name is {{ last_name }}.
Un contexto es un mapeo entre nombres y valores (similar a un diccionario de Python) que es pasado a una plantilla.
Una plantilla renderiza un contexto reemplazando los "huecos" que dejan las variables por valores tomados del contexto y ejecutando todas las etiquetes de bloque.
Para más detalles acerca de estos términos, referirse al Capítulo 4.
El resto de este capítulo discute las distintas maneras de extender el sistema de plantillas. Aunque primero, debemos dar una mirada a algunos conceptos internos que quedaron fuera del Capítulo 4 por simplicidad.