2010-05-19 4 views

Antwort

32

Durch die Erweiterung können Sie Blöcke (z. B. "Inhalt") von einer übergeordneten Vorlage ersetzen, anstatt Teile zum Erstellen der Seite einzubeziehen (z. B. "Kopfzeile" und "Fußzeile"). Auf diese Weise erhalten Sie eine einzige Vorlage, die Ihr komplettes Layout enthält, und Sie fügen nur den Inhalt der anderen Vorlage ein, indem Sie einen Block ersetzen.

Wenn das Benutzerprofil auf allen Seiten verwendet wird, möchten Sie es wahrscheinlich in Ihre Basisvorlage einfügen, die von anderen Benutzern erweitert oder in die Basisvorlage aufgenommen wird. Wenn Sie das Benutzerprofil nur auf sehr wenigen Seiten wünschen, können Sie es auch in diese Vorlagen aufnehmen. Wenn das Benutzerprofil das gleiche ist, außer auf einigen Seiten, legen Sie es in Ihre Basisvorlage in einem Block, der dann in den Vorlagen ersetzt werden kann, die ein anderes Profil wünschen.

+3

Beste Zusammenfassung über extends/block/include immer – Philip007

2

Siehe über django template inheretance.

Verlängert die 'Eltern' Vorlage und kann Teile davon für andere Funktionen überschreiben.

Include enthält ein einfaches Include, das eine Vorlage in einem aktuellen Kontext rendert.

+0

Dies hat sich geändert, da der obige Link kein Beispiel oder Erklärung Vererbung zu geben scheint. – Harlin