Incluindo um Template
Parte da seção Fundamentos do Django do Journey de Django da Coddy. Lição 19 de 23.
Um cartão de bebida (nome, descrição, preço) deve aparecer na página inicial para a oferta especial de hoje e em /drinks/ para cada bebida. Ele está pronto em menu/templates/menu/drink_card.html. Em vez de copiá-lo para dois templates, inclua-o:
{% include "shop/price_tag.html" %}O template incluído é inserido onde está a tag e tem acesso às mesmas variáveis. Se a etiqueta de preço lê {{ product.price }}, ela funciona dentro de {% for product in products %}. Quando o item tem outro nome, with passa o nome que a peça espera:
{% include "shop/price_tag.html" with product=deal %}{% extends %} compartilha uma estrutura; {% include %} compartilha uma peça. Altere a peça uma vez e todas as páginas acompanham a mudança.
Desafio
FácilExiba o cartão da bebida de drink_card.html nas duas páginas.
- Em
home.html, substitua<p>Today's special: ...</p>por<p>Today's special:</p>, seguido pelo cartão da bebida paraspecial. - Em
drinks.html, dentro de cada<li class="drink">, substitua o link e o preço pelo cartão da bebida. Mantenha a indicação de esgotado.
Pressione Executar: a página inicial e /drinks/ exibem os mesmos cartões.
Experimente você mesmo
{% extends "menu/base.html" %}
{% block content %}
<h1>Welcome to Corner Café</h1>
<p>Fresh coffee and cake every day.</p>
<p>Today's special: {{ special.name }}</p>
<a href="{% url 'menu:about' %}">About us</a>
{% endblock %}
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áginaPratique por conta própria: Playground de Django