Menu
CoddyTech

Variáveis de template

Parte da seção Fundamentos do Django do Journey de Django da Coddy. Lição 12 de 23.

A página inicial deve informar o especial de hoje, e o especial está em Python, em DRINKS. A view passa dados para um template pelo terceiro argumento de render(), o contexto: um dicionário de nomes que o template pode usar.

def team(request):
    barista = {"name": "Maya", "since": 2024}
    return render(request, "menu/team.html", {"barista": barista})
{{ barista }} exibe um valor. Um ponto acessa seu conteúdo: {{ barista.name }} lê uma chave do dicionário ou um atributo do objeto.
<p>{{ barista.name }} has made your coffee since {{ barista.since }}.</p>

Templates não são Python: barista["name"] é um erro, e um nome que não existe no contexto não exibe nada, sem gerar um erro. Quando um valor estiver faltando na página, confira primeiro a grafia.

challenge icon

Desafio

Fácil
  • Faça a view home passar o flat white de DRINKS para o template como special.
  • Em home.html, após o primeiro parágrafo, adicione <p>Today's special: Flat White</p>, com o nome obtido do contexto.

Pressione Run: a página inicial informa a especialidade de hoje.

Experimente você mesmo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Corner Café</title>
</head>
<body>
    <h1>Welcome to Corner Café</h1>
    <p>Fresh coffee and cake every day.</p>
    <a href="{% url 'menu:about' %}">About us</a>
</body>
</html>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos do Django

Pratique por conta própria: Playground de Django