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!