Herencia de plantillas múltiples de django: ¿es este el estilo correcto?

yo

así que tengo una base.html:

<html>
    <body>
        <div id="header"> ... </div>
        {% block main %}{% endblock %}
        <div id="footer"> ... </div>
    </body>
</html>

y también tengo una página que muestra las publicaciones de los usuarios:

{% extends base.html %|
{% block main%}
    <h1>welcome to yours posts hangout!</h1>

      ... snazzy code here that shows all the posts ...

{% endblock%}

Ahora, el problema es, tal vez tengo otra página como esta:

{% extends base.html %|
{% block main%}
    <h1>look at all posts by all users!</h1>

      ... snazzy code here that shows all the posts by all the users ...

{% endblock%}

Como todos pertenecemos a la mensa, podemos ver que el código elegante que tengo se está repitiendo - ¡dos veces (por diversión tautológica!)

No quiero repetir este código. Quiero decir, si va a ser un problema importante, lo haré, pero de lo contrario me gustaría una página que tenga el código elegante definido, y luego deslice los pequeños cambios arriba y ( posiblemente) debajo de él en.

Sin embargo, mi comprensión de las plantillas es inestable. Creo que esta es la forma de hacerlo, ¿existe una forma mejor / estandarizada?

snazzy.html:

{% extends base.html %|
  {% block aboveSnazzy%}
  {% endblock %}

      ... snazzy code here that shows all the posts by all the users ...

  {% block belowSnazzy%}
  {% endblock %}
{% endblock%}

y luego para cada una de las diferentes piezas, puedo tener:

usersArea.html:

{% extends snazzy.html %|
  {% block aboveSnazzy%}
      <h1>welcome to yours posts hangout!</h1>
  {% endblock %}


  {% block belowSnazzy%}
      <h1>i didn't think this far ahead in the example</h1>
  {% endblock %}
{% endblock%}

etc etc para las otras piezas también!

ok, entonces sé que solo puedo enviar un parámetro con un encabezado diferente o lo que sea, supongamos que lo anterior es increíble, no sé, mostrando alguna otra plantilla que me gustaría o haciendo algo no trivial. ¿Es lo que he detallado arriba de la "manera" de hacerlo?

¡aclamaciones!

Respuestas a la pregunta(1)

Su respuesta a la pregunta