YoDziedziczenie wielu szablonów django - czy jest to właściwy styl?
więc mam base.html:
<html>
<body>
<div id="header"> ... </div>
{% block main %}{% endblock %}
<div id="footer"> ... </div>
</body>
</html>
i mam również stronę przedstawiającą posty użytkownika:
{% extends base.html %|
{% block main%}
<h1>welcome to yours posts hangout!</h1>
... snazzy code here that shows all the posts ...
{% endblock%}
teraz jest problem, może mam inny strona taka jak ta:
{% 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%}
ponieważ wszyscy należymy do mensa, widzimy to snazzy kod, który mam, jest powtarzany - dwa razy (dla tautologicznej zabawy!)
Nie chcę powtarzać tego kodu - mam na myśli, jeśli to będzie poważny problem, ale w przeciwnym razie tak jak na jednej stronie, która ma zdefiniowany kod, a następnie wsuń małe zmiany powyżej i (ewentualnie) poniżej.
Moje zrozumienie szablonów jest jednak niepewne - myślę, że jest to sposób na zrobienie tego, czy istnieje lepszy/znormalizowany sposób?
snazzy.html:
{% extends base.html %|
{% block aboveSnazzy%}
{% endblock %}
... snazzy code here that shows all the posts by all the users ...
{% block belowSnazzy%}
{% endblock %}
{% endblock%}
a następnie dla każdego z różnych kawałków, mogę mieć:
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 dla innych kawałków zbyt !
ok, więc wiem, że mogę po prostu wysłać parametr z innym nagłówkiem lub co ty - udawajmy, że powyższy fragment Snazzy to, nie wiem, pokazujący jakiś inny szablon, który chciałbym lub zrobiłbym coś nietrywialny. Czy to, co opisałem powyżej "sposób" to zrobić?
Pozdrawiam!
Thankyo! Nie wiedziałem o znacznikach włączenia/włączenia. Popatrzę na nich! – bharal