Django Web Framework vem com dezenas de tags usadas para implementar lógicas arbitrárias diretamente no template. Etiquetas parecido com este: {% tag %}. As tags são mais complexas do que as variáveis: algumas criam texto na saída, algumas controlam o fluxo executando loops ou lógica e algumas carregam informações externas no modelo para serem usadas por variáveis ​​posteriores. As tags fornecem lógica arbitrária no processo de renderização. Por exemplo, uma tag pode gerar conteúdo, servir como uma estrutura de controle, por exemplo, uma instrução “if” ou um loop “for”, obter conteúdo de um banco de dados ou até mesmo permitir o acesso a outras tags de modelo.

Sintaxe
{% tag_name%}
Exemplo

As tags são cercadas por {% e%} assim:

{% csrf_token%}

A maioria das tags aceita argumentos, por exemplo:

{% ciclo 'ímpar' 'par'%}
{% for o in some_list %}  
    <tr class="{% cycle 'row1' 'row2' %}"
        ...  
    </tr
{% endfor %}