0Pricing
Django Academy · Lección

Herencia de plantillas con extends y block

Cree un diseño base y sustituya secciones

Herencia de plantillas con extends y block es una lección gratuita de Django Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Django Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Django Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Stop Repeating Layout

Every page shares a header, nav, and footer. Template inheritance lets you write that shell once and reuse it everywhere. 🧱

Start with a Base

A base template holds the common HTML skeleton. Child pages will plug their unique content into spots you leave open.

base.html

Define a block

A block marks a section a child can replace. You name it, leave optional default content, then close it with endblock.

{% block content %}{% endblock %}

A Minimal Base File

This base wraps a title block and a content block in real HTML. Children will fill those two named holes.

<html><head><title>{% block title %}Site{% endblock %}</title></head>
<body>{% block content %}{% endblock %}</body></html>

Children Use extends

The extends tag must be the first line of a child template. It tells Django which base layout to build upon.

{% extends "base.html" %}

Override a block

In the child you redefine a block with the same name. Whatever you put inside replaces the base default for that page.

{% extends "base.html" %}
{% block content %}<h1>Welcome</h1>{% endblock %}

Unfilled Blocks Use Defaults

If a child skips a block, the base content shows instead. That makes a default a safe placeholder for shared text.

Keep Parent Content with super

Call block.super to keep the parent block content and add your own around it, instead of replacing it entirely.

{% block content %}{{ block.super }}<p>Extra</p>{% endblock %}

Inheritance Can Nest

A child can itself be a base for deeper pages. Layered layouts let sections share a sub-shell while still using the global one.

extends Goes First

Only one extends is allowed and it must lead the file. Anything before it, even a comment, breaks the inheritance.

Blocks Build Pages

Think of a page as a base full of blocks that children fill. This keeps every page consistent and edits in one place.

Quick Check

Recall how a child connects to its layout.

Recap: Write Layout Once

You learned to define blocks in a base and fill them with extends in children, even keeping parent content via block.super. Next: linking routes and assets.

Preguntas frecuentes

¿La lección «Herencia de plantillas con extends y block» es gratis?

Sí — el texto completo de «Herencia de plantillas con extends y block» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Django Academy, actualiza a CoddyKit PRO. El curso de Django Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Herencia de plantillas con extends y block»?

Cree un diseño base y sustituya secciones Practicas Django Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Django Academy?

No se requiere experiencia previa. Django Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Herencia de plantillas con extends y block»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Django Academy?

Sí. Cada lección de Django Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. render() y el contexto de la plantilla
  2. Etiquetas y filtros de plantilla
  3. Herencia de plantillas con extends y block
  4. Las etiquetas url y static
← Volver a Django Academy