2010-09-07 15 views
11

Im Django-Framework können Webseitenvorlagen von anderen Vorlagen erben. In Ihrer untergeordneten Vorlage definieren Sie Code-Blöcke, die gleich benannte Blöcke in übergeordneten Vorlagen überschreiben. Ich vermute, es gibt andere Back-End-Templating-Systeme, die auch so funktionieren, aber Django ist mir vertraut.JavaScript-Vorlage Vererbung

Unterstützt eines der vorhandenen JavaScript-Vorlagensysteme die Django-Style-Vererbung?

+2

Sie sollten erklären, was "Django-Style Vererbung" ist und dann wird vielleicht jemand eine Antwort posten. –

+0

@Daniel, guter Vorschlag. – morgancodes

+0

Nur [erstellt meine eigene Frage] (http://stackoverflow.com/q/7014944/207894) in Bezug auf dieses Problem, mit mehr Details. Hoffe, das wird helfen. –

Antwort

0

Moustache.js unterstützt partials, die auf ähnliche Weise funktionieren. Other than that, habe ich nichts in der Lage zu finden - vielleicht werde ich es machen ...

* Okay, sie sind nicht wirklich wie Djangos Vorlagen bei allen, aber sie sind in der Nähe simulacrum Ich könnte finden.

0

Check out Handlebars.js. Sie können Hilfsmethoden definieren, die Sie verwenden können, um verschiedene Blöcke zu kompartimentieren und sie auf ähnliche Weise wie Rails 'content_for :my_area und yield :my_area auszuhacken.

0

Ja, mit Dustjs können Sie eine Vorlage den Großteil ihres Inhalts von einer gemeinsamen Basisvorlage erben lassen. Hier ist, wie es funktioniert, mit Dustjs: (siehe die "Bausteine ​​und Inline Partials" -Abschnitt)

In einer Datei "base_template":

Start 
{+title/} 
Middle 
{+main/} 
End 

Eine Vorlage, dass "erbt" die base_template:

{>base_template/} 
{<title} 
    Child Title 
{/title} 
{<main} 
    Child Content 
{/main} 

Ergebnisse in so etwas wie:

Start 
Child Title 
Middle 
Child Content 
End 

Verwandte Frage: O nly 1 Ebene der Vererbung scheint unterstützt werden: Is there a way to do more than one level of inheritance value overrides with dust.js?