Ich hätte gerne einen Rat bei der Konstruktion von Django Vorlagen Ebenen.Django Vorlage Vererbung: Wie viele Ebenen und welche Seite zu rendern
Lesen der Dokumente, ich verstehe nicht, wie Sie eine Vorlage Hierarchie Struktur mit mehr als 2 Ebenen erstellen.
Zum Beispiel würde Ich mag 3 Ebenen der Vererbung erstellen:
base.html
└── base_level2.html
├── level2_level3_1.html
└── level2_level3_2.html
Dies ist mein Code:
base.html
First level {% block level2 %}{% endblock %}
base_level2.html
{% extends "base.html" %} {% block level2 %} Second level {% block level3_1 %}{% endblock %} {% block level3_2 %}{% endblock %} {% endblock %}
level2_level3_1.html
{% extends "base_level2.html" %} {% block level3_1 %} Third level, part 1 {% endblock %}
level2_level3_2.html
{% extends "base_level2.html" %} {% block level3_2 %} Third level, part 2 {% endblock %}
views.py:
def myView(request): return render_to_response('level2_level3_1.html', {}, context_instance=RequestContext(request))
Auf diese Weise ich folgendes sehen Mein Browser:
First level
Second level
Third level, part 1
Und das ist mir logisch, weil ich render_to response
nur auf level2_level3_1.html nennen.
Natürlich, wenn Anruf level2_level3_2.html, bekomme ich die Nachricht Third level, part 2
, aber nicht die Third level, part1
.
Wie löst man das? Ist das ein guter Ansatz? Ich habe Sachen auf diese Weise strukturiert, weil meine echten Vorlagen sehr groß sind, viele Zeilen Code, also würde ich gerne etwas Ordnung behalten. Jeder Rat wird geschätzt.
Was ist das Problem? Möchtest du "Drittes Niveau, Teil 1" und "Drittes Niveau, Teil 2" haben? Warum können Sie nicht beide Teile auf die gleiche Seite setzen? Sie gehören zu zwei verschiedenen Blöcken. – EsseTi
Wie ich oben sagte "Ich habe Sachen auf diese Weise strukturiert, weil meine echten Vorlagen sehr groß sind ...". Dies ist ein minimales Beispiel, aber meine level2_level3_1.html und level2_level3_2.html sind in Wirklichkeit sehr lang und ich möchte sie nicht in einer großen einzelnen Datei zusammenführen. – caneta