2011-01-04 8 views
0

Hier ist der Standard-Aufnahme-Tag:Mit inclusion_tag decorater mit dynamischer Vorlage

@register.inclusion_tag('results.html') 
def show_results(poll): 
... 

Ich mag gerne wissen, ob es möglich, einen Aufnahme-Tag zu verwenden, definiert dynamisch den Template-Tag. Beispiel:

@register.inclusion_tag('%s.html' % PATH) 
def show_results(poll, PATH): 
... 

`

Antwort

1

Nein, dies ist nicht möglich, weil das nicht ist, wie Dekorateure (oder in der Tat allgemein Python-Funktionen) arbeiten. Parameter werden beim ersten Import des Moduls ausgewertet.

Sie müssten ein richtiges benutzerdefiniertes Tag schreiben, ohne den inclusion_tag Shortcut-Decorator zu verwenden. Das ist eigentlich gar nicht so schwer, die Dokumentation zeigt Ihnen wie.