Fügen Sie eine Ansicht in eine Vorlage ein

9

In django habe ich eine Ansicht, die eine Template-HTML-Datei ausfüllt, aber innerhalb der HTML-Vorlage möchte ich eine andere Ansicht einfügen, die eine andere HTML-Vorlage wie folgt verwendet:

%Vor%

Ist das möglich?

    
Kyle V. 04.05.2011, 04:48
quelle

3 Antworten

6

Ja, Sie müssen dazu ein Template-Tag verwenden. Wenn Sie lediglich eine andere Vorlage rendern müssen, können Sie ein Einschluss-Tag oder möglicherweise nur den eingebauten {% include 'Pfad / to / template.html%}

verwenden

Template-Tags können alles tun, was Sie in Python tun können.

Ссылка

[Folge] Sie können die render_to_string-Methode verwenden:

%Vor%

Sie müssen entweder das Anforderungsobjekt aus dem Kontext auflösen oder es als Argument an Ihr Schablonentag übergeben, wenn Sie die context_instance nutzen möchten.

Folgeantwort: Beispiel für ein Einschluss-Tag

Django erwartet, dass Vorlagen-Tags in einem Ordner mit dem Namen "tasteletags" in einem App-Modul in Ihren installierten Apps gespeichert werden ...

%Vor%

Das inclusion-Tag rendert eine andere Vorlage, so wie Sie es benötigen, aber ohne eine View-Funktion aufrufen zu müssen. Hoffe, das bringt dich weiter. Die Dokumente zu den Einschluss-Tags finden Sie unter: Ссылка

    
Brandon 04.05.2011, 04:54
quelle
2

Anhand Ihres Beispiels und Ihrer Antwort auf Brandons Antwort sollte das dann für Sie funktionieren:

template.html

%Vor%

views.py

%Vor%     
Longestline 04.05.2011 07:01
quelle
1

Jemand hat ein Vorlagen-Tag erstellt, das eine Ansicht lädt . Ich habe es versucht, und es funktioniert. Der Vorteil der Verwendung dieses Vorlagen-Tags besteht darin, dass Sie Ihre vorhandenen Ansichten nicht neu schreiben müssen.

    
user2233706 20.11.2013 06:12
quelle

Tags und Links