Hossa, was muß ich da lesen: http://www.pocoo.org/blog/happy-new-year/
Da hab ich ja auf das richtige Pferd gesetzt
Ich dachte jinja kann auch Templates compilieren?!?!?
Das aus für Jinja???
Heißt für mich soviel wie.... Jinja wird weiter existieren... also kannst du das ruhig weiter nutzen.We haven't decided what we will use in future for templating but support for Jinja won't stop. I'm looking forward to write a new implementation of Jinja especially for sandboxing purposes with a much simpler codebase.
Wäre allerdings schön, wenn nicht gleich wieder ne neue TemplateEnigne entsteht, sondern Jinja "einfach nur" umgeschrieben wird...
MfG EnTeQuAk
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Blackbird hat zu mir gemeint, dass er an einer Art Jinja 2 arbeitet und dass er Ruty als Prototyp dafür verwendet. Von dem her: keine Sorge.
Und wegen Genshi: ist nett für XML, aber für Texttemplates kann es mit Jinja oder Djangos Templates nicht mithalten. AUßer es ist in letzter Zeit sehr viel besser geworden.
Und wegen Genshi: ist nett für XML, aber für Texttemplates kann es mit Jinja oder Djangos Templates nicht mithalten. AUßer es ist in letzter Zeit sehr viel besser geworden.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Man beachte dies hier:
Armin hat geschrieben:We haven't decided what we will use in future for templating but support for Jinja won't stop. I'm looking forward to write a new implementation of Jinja especially for sandboxing purposes with a much simpler codebase.
TUFKAB – the user formerly known as blackbird
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Das hab ich auch gelesen, aber ich wollte zum einen ein wenig aufschrecken Anderer Seits denke ich mir: Wenn ihr in pocoo kein jinja einsetzt, könnte jinja mit der Zeit verstauben.
Warum solltet ihr da Energie rein stecken, wenn ihr eh was anderes nimmt, was besser ist?
Oder bleibt ihr dennoch erstmal bei jinja?
Warum solltet ihr da Energie rein stecken, wenn ihr eh was anderes nimmt, was besser ist?
Oder bleibt ihr dennoch erstmal bei jinja?
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Wird es nicht.jens hat geschrieben:Das hab ich auch gelesen, aber ich wollte zum einen ein wenig aufschrecken Anderer Seits denke ich mir: Wenn ihr in pocoo kein jinja einsetzt, könnte jinja mit der Zeit verstauben.
Es gibt genug Situationen wo du Sandboxed Template Engines brauchst/haben willst. Für pocoo sieht es aber so aus als wäre das der falsche Schritt. Mit Mako kann keine Template Engine der Welt in Sachen Geschwindigkeit mithalten. Nur gibt es da eben keine Sandbox.Warum solltet ihr da Energie rein stecken, wenn ihr eh was anderes nimmt, was besser ist?
TUFKAB – the user formerly known as blackbird
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Du meinst http://www.makotemplates.org/ ?
Auf der ersten Seite sind Benchmark Werte:
Demnach ist Cheetah schneller?
Was mir direkt auf der ersten Seite übel aufstößt ist die Syntax:
Das sieht IMHO krank aus Kein vergleich zu der Klarheit von jinja...
Ich dachte auch immer, das man möglichst wenig Logik in ein Template packen sollte. Das sehen die aber ganz anders, was?
Auf der ersten Seite sind Benchmark Werte:
Code: Alles auswählen
Mako: 0.90 ms Myghty: 5.25 ms
Cheetah: 0.70 ms Genshi: 12.53 ms
Django: 5.43 ms Kid: 19.12 ms
Was mir direkt auf der ersten Seite übel aufstößt ist die Syntax:
Code: Alles auswählen
<%inherit file="base.html"/>
<%
rows = [[v for v in range(0,10)] for row in range(0,10)]
%>
<table>
% for row in rows:
${makerow(row)}
% endfor
</table>
<%def name="makerow(row)">
<tr>
% for name in row:
<td>${name}</td>\
% endfor
</tr>
</%def>
Ich dachte auch immer, das man möglichst wenig Logik in ein Template packen sollte. Das sehen die aber ganz anders, was?
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Cheetah hat einen C Parser. Mako ist reines Python. Zudem kann Mako Inheritance.jens hat geschrieben:Du meinst http://www.makotemplates.org/ ?
Auf der ersten Seite sind Benchmark Werte:Demnach ist Cheetah schneller?Code: Alles auswählen
Mako: 0.90 ms Myghty: 5.25 ms Cheetah: 0.70 ms Genshi: 12.53 ms Django: 5.43 ms Kid: 19.12 ms
Damit muss man leben. Ganz so schlimm ist es auch nicht.Was mir direkt auf der ersten Seite übel aufstößt ist die Syntax:
Sollte man auch. Daran wird Mako nichts ändern.Ich dachte auch immer, das man möglichst wenig Logik in ein Template packen sollte. Das sehen die aber ganz anders, was?
TUFKAB – the user formerly known as blackbird
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
So ganz verstehe ich das mit dem Sandboxed noch nicht.
Wenn eine Template Engine aus dem Template, echten Python Code erzeugt, ist es nicht Sandboxed? Jinja erzeugt kein Python code, sondern füllt einfach das Template aus. Also arbeitet jinja Sandboxed?
Ist das so richtig?
Ich dachte immer jinja könnte aber auch Templates compilieren und dann wären die super schnell. Ist es aber nicht, weil nur das erneute Parsen wegfällt?
Habt ihr mal wirklich einen Benchmark gemacht? Wie sehen die Werte aus?
In meinem alten "Template gesucht" Thread: http://www.python-forum.de/topic-4231.html hatte ich ja SpyTee gefunden und daraus SpyTee2 gepatcht. Das hat im Grunde auch Python-Code generiert. Ist es also das selbe was Mako macht? Wobei SpyTee keine Inheritance kann.
Wenn eine Template Engine aus dem Template, echten Python Code erzeugt, ist es nicht Sandboxed? Jinja erzeugt kein Python code, sondern füllt einfach das Template aus. Also arbeitet jinja Sandboxed?
Ist das so richtig?
Ich dachte immer jinja könnte aber auch Templates compilieren und dann wären die super schnell. Ist es aber nicht, weil nur das erneute Parsen wegfällt?
Habt ihr mal wirklich einen Benchmark gemacht? Wie sehen die Werte aus?
In meinem alten "Template gesucht" Thread: http://www.python-forum.de/topic-4231.html hatte ich ja SpyTee gefunden und daraus SpyTee2 gepatcht. Das hat im Grunde auch Python-Code generiert. Ist es also das selbe was Mako macht? Wobei SpyTee keine Inheritance kann.
Großartigblackbird hat geschrieben:Wird es nicht.jens hat geschrieben:Das hab ich auch gelesen, aber ich wollte zum einen ein wenig aufschrecken Anderer Seits denke ich mir: Wenn ihr in pocoo kein jinja einsetzt, könnte jinja mit der Zeit verstauben.
lg
wollte nur mal darauf hinweisen:
http://pocoo.org/blog/about-jinja/
Danke an blackbird für diesen ausführlichen Blog-Post!
MfG EnTeQuAk
http://pocoo.org/blog/about-jinja/
Danke an blackbird für diesen ausführlichen Blog-Post!
MfG EnTeQuAk
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Wie siehst denn nun aus? Was macht ihr in pocoo?blackbird hat geschrieben:Es gibt genug Situationen wo du Sandboxed Template Engines brauchst/haben willst. Für pocoo sieht es aber so aus als wäre das der falsche Schritt. Mit Mako kann keine Template Engine der Welt in Sachen Geschwindigkeit mithalten. Nur gibt es da eben keine Sandbox.
Setzt ihr weiterhin auf jinja und verbessert es parallel.
Ich meine, die Implementation ist ja eigentlich unabhängig von der verwendeten Template Syntax und die ist bei jinja doch ziemlich gut.
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Wie ich bereits gesagt habe: Die Entwicklung von Jinja läuft unabhängig von pocoo. Ob Jinja 1.0 dann in pocoo wirklich verwendet wird hängt in erster Linie von der Tatsächlichen Performance und dem Willen der Template Designer ab. Und das ist momentan hauptsächlich beewee.
TUFKAB – the user formerly known as blackbird
- jens
- Python-Forum Veteran
- Beiträge: 8502
- Registriert: Dienstag 10. August 2004, 09:40
- Wohnort: duisburg
- Kontaktdaten:
Wie ich nun gesehen hab, ist die Template Engine von django der syntax von jinja sehr ähnlich.
Wozu dann überhaupt noch ein eigenes Template-Projekt? Bzw. warum wurde überhaupt jinja programmiert? Gab es damals die django Template-Engine noch nicht?
Wo liegen die Unterschiede zwischen jinja und dem django Ding?
Wozu dann überhaupt noch ein eigenes Template-Projekt? Bzw. warum wurde überhaupt jinja programmiert? Gab es damals die django Template-Engine noch nicht?
Wo liegen die Unterschiede zwischen jinja und dem django Ding?
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
django templating lässt sich ohne django nicht verwenden. Das war der Punkt.jens hat geschrieben:Wozu dann überhaupt noch ein eigenes Template-Projekt? Bzw. warum wurde überhaupt jinja programmiert? Gab es damals die django Template-Engine noch nicht?
TUFKAB – the user formerly known as blackbird
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Klar kann man es separat auch verwenden. So wie hier mit CherryPy. Man braucht nur eben den ganzen anderenn Django-Kram, auch wenn man ihn nicht nutzen will. Vielleicht kann man mit den Django-Developern reden, dass man die Engine mit weniger Problemen ohne Django verwenden kann.jens hat geschrieben:Ah, das ist natürlich dumm... Schade, andere Komponenten kann man ohne den Rest benutzten...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- User
- Beiträge: 1790
- Registriert: Donnerstag 28. Oktober 2004, 16:33
- Wohnort: Graz, Steiermark - Österreich
- Kontaktdaten:
Oder man wartet einfach auf Jinja 1. Das wird sich dann sogar in Django lohnenLeonidas hat geschrieben:Klar kann man es separat auch verwenden. So wie hier mit CherryPy. Man braucht nur eben den ganzen anderenn Django-Kram, auch wenn man ihn nicht nutzen will. Vielleicht kann man mit den Django-Developern reden, dass man die Engine mit weniger Problemen ohne Django verwenden kann.jens hat geschrieben:Ah, das ist natürlich dumm... Schade, andere Komponenten kann man ohne den Rest benutzten...
TUFKAB – the user formerly known as blackbird