Vergleich von Template-Engines

Django, Flask, Bottle, WSGI, CGI…
Antworten
deamon
User
Beiträge: 63
Registriert: Mittwoch 8. Oktober 2008, 11:14

Template Engines gibt es viele: Mako, Jinja, Genshi, Cheetah ... Aber welche Template-Engines gibt es für Python 3? Und was sind die wesentlichen Unterschiede? Warum bevorzugt ihr eine bestimmte Template-Engine oder meidet andere?
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Cheetah ist recht alt und wird von den aller meisten Leuten für neue Projekte nicht mehr genutzt, wodurch du auch Probleme bekommen wirst mit Support etc.

Genshi ist durch die Stream API sehr interessant, wenn man die aber nicht braucht und auf XML keine Lust hat ist Genshi eher eine schlechte Wahl.

Mako und Jinja sind unumstritten die schnellsten weit verbreiteten Template Engines, die geben sich da auch nicht viel und sind etwa gleich schnell.

Bei Mako nutzt man Python direkt im Template, wenn einem dass gefällt kann man es sicherlich gut nutzen hat aber den Nachteil dass es schwieriger für Designer ist und Templates nicht von Usern geschrieben werden können.

Jinja hat eine komplett eigene an Python angelehnte Sprache sehr ähnlich zu Djangos Templates wenn auch deutlich mächtiger, die man sehr schnell gelernt hat. Außerdem bietet Jinja eine Sandbox für Templates die z.B. User geschrieben haben.

Zu Python 3 Support kann ich nicht viel sagen außer dass ich weiß das Jinja ihn hat.
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

Der Vollständigkeit halber: SimpleTemplate (Teil von Bottle) läuft unter Python3, verwendet nativen Python Syntax für die Template Logik, ist von der Geschwindigkeit her vergleichbar mit mako/Jinja2 und auch ohne Bottle zu verwenden. http://bottle.paws.de/docs/dev/stpl.html
Bottle: Micro Web Framework + Development Blog
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:


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