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 indicar a especialidade de hoje, que 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 de dicionário ou um atributo de 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.
Desafio
FácilMostre a especial de hoje na página inicial.
- Em
menu/views.py, façahomepassar o flat white deDRINKSpara o template comospecial. - Em
home.html, após o primeiro parágrafo, adicione<p>Today's special: Flat White</p>, com o nome obtido despecial.
Pressione Run: a página inicial exibe Today's special: Flat White.
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>
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
1Seu Primeiro Site com Django
Olá, DjangoUma Segunda Página4Layouts e Arquivos Estáticos
Herança de TemplatesUm Título para Cada Página3Templates
Seu primeiro templateVariáveis de templatePratique por conta própria: Playground de Django