Django: template source code erhalten...

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Wie bekomme ich einfacher den Sourcecode eines Templates (und nicht die compilierte Version).

Hab mir das folgende gemacht:

Code: Alles auswählen

def get_template_source(template_name):
    for loader_name in settings.TEMPLATE_LOADERS:
        loader = find_template_loader(loader_name)
        if loader is None:
            continue
        try:
            template_source = loader.load_template_source(template_name)[0]
        except TemplateDoesNotExist:
            continue
        else:
            return template_source
    raise TemplateDoesNotExist(template_name)
Geht das einfacher?

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
BlackJack

Zumindest geht der Quelltext etwas einfacher, ohne jetzt auf den konkreten Anwendungsfall einzugehen:

Code: Alles auswählen

def get_template_source(template_name):
    for loader_name in settings.TEMPLATE_LOADERS:
        loader = find_template_loader(loader_name)
        try:
            return loader.load_template_source(template_name)[0]
        except (TypeError, TemplateDoesNotExist):
            pass  # Intentionally ignored.
    raise TemplateDoesNotExist(template_name)
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ja, das stimmt. Wobei ich immer gern "Zwischenstände" an Namen binde. Denn die sieht man dann in den Django Traceback Seiten direkt, was oft hilfreich für die Fehlersuche ist...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Antworten