![]() |
| | Themen-Optionen |
| | Nach oben #1 |
| Benutzer Registriert seit: 14.11.2005
Beiträge: 52
|
Ich bin gerade dabei, mir ein CMS zu bauen, welches XSL als Template-Engine verwendet. Bisher verwende ich noch smarty, denke aber, dass es einen gewissen Reiz ausmacht stattdessen XSL zu verwenden. Gerade auch in Verbindung mit AJAX. Einfachen Content mit XSL zu HTML umzuwandeln ist kein Problem, schwierig wird es hingegen, wenn Formulare oder ähnliches generiert werden sollen. Bisher verwende ich HTML_QuickForm und Smarty zur dynamischen Generierung und Validierung von Formularen. Um dies mit XSLT zu bewerkstelligen müsste ich aber doch das XSL-Stylesheet ebenfalls dynamisch per PHP generieren oder nicht? Dies ist ein generelles Designproblem, welches mir bei der Verwendung von XSLT ständig auffällt. Gibt es einen eleganteren Weg? Hat jemand von euch bereits Erfahrungen in diesem Gebiet sammeln können? |
| | |
| | Nach oben #2 |
| Benjamin Klaile Registriert seit: 02.12.2004 Ort: Remagen
Beiträge: 4.480
|
Hi, also ich habe genau keine Ahnung von XSL(T), aber sind nicht XForms für so etwas gedacht? Weiß das jetzt nicht genau und habe auch das Halbwissen nicht kontrolliert, aber vielleicht habe ich ja richtig geraten. |
| | |
| | Nach oben #3 |
| Benutzer Registriert seit: 14.11.2005
Beiträge: 52
|
Die XForms sind klasse, keine Frage. Clientseitige Validierung und es werden sogar XML-Daten zurückgegeben, aber leider unterstützt das heute kein Browser und ein serverseitiger Prozessor, der meines Wissens für PHP momentan gar nicht existiert, wäre dann auf JavaScript angewiesen. Die XForms werden einfach noch viel zu schlecht unterstützt, um sie schon jetzt zu nutzen, deshalb bin ich zuerst gar nicht darauf eingegangen. |
| | |
| | Nach oben #5 |
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 826
|
Hi. Ich hab hier Ansätze für eine Template-Engine, die auch schon einige Funktionen unterstützt, die weiter zu entwickeln ich aber gerade nicht schaffe. Dort beutze ich XSLT, um XML-Templates in PHP-Skripte umzuwandeln (so, wie das z.B. Smarty auch vom Prinzip her macht). Das Ganze erfüllt im Moment folgende Tests: PHP-Code: Vielleicht ist die Herangehensweise ja eine Möglichkeit für dich. Basti |
| | |
| | Nach oben #6 |
| Benutzer Registriert seit: 14.11.2005
Beiträge: 52
|
ich verstehe nicht genau, was ich damit machen kann. Eigentlich ersetzt du hier doch einfach die verschiedenen Tags im $a-Array durch php-Code. Meine Idee, wäre static content von dynamic content zu trennen. Dynamisch erzeugte Formulare sind in den allermeisten Fällen ja static content. Und den static content erzeuge ich nur einmal, indem ich die dazugehörigen XSL-Dateien einmalig per PHP rendere. Allerdings bräuchte ich ja dafür wieder ne Art Templateengine. Und ne Templateengine für ne Templateengine zu verwenden ist wohl eher kein guter Stil. Deshalb suche ich nach etwas eleganterem. |
| | |
| | Nach oben #7 | ||
| Bastian Fenske Registriert seit: 04.01.2006 Ort: Kassel
Beiträge: 826
|
Hi. Zitat:
Die einzelnen Felder, aus denen sich die Formulare dann zusammensetzen sind ja festgelegte Module (Widgets) und was am Ende dabei rauskommt ist dann ja das Template, das die Entwickler/Designer dann nochmal anpassen können. Natürlich lässt sich auch aus einer in XML abgelegten Datenstruktur per XSL so ein Formular bauen und dazu bräuchtest du ja auch kein "dynamisches" XSLT, da die Regeln ja fix sind: Aus einem Knoten property mit Attribut type="varchar" wird ein Input-Knoten vom Typ text ... oder so. Und z.B. diesen Input-Tag verpasst du dann eben ein value="{User.name}" oder ein value="<?php echo $this->name; ?>" oder wie auch immer deine eigenlichen Templates dann aussehen müssen. Zitat:
Ich glaub, ich habs immer noch nicht ganz geschnallt. Aber hört sich eben so an, als willst du irgendwie aus einer Datenstruktur dynamisch Templates (Formular-Templates) erstellen und die Vorstellung hast, du müsstest aus der Datenstruktur gleich das statische HTML erzeugen. Aber, es spricht doch nichts dagegen, hier in zwei Schritten vorzugehen, also erstmal (z.B. mit XSL) die Formular-Templates zu erzeugen und dann "just in time" oder mit nochmaligem Cache dazwischen das fertige Formular zu erzeugen. Jedes RAD-Framework mach das doch genau nach dem Muster. Basti | ||
| | |
![]() |
| Lesezeichen |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
| Themen-Optionen | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Kleine Fragen zur IT[X] Template Engine | ex³ | PEAR, PECL und Frameworks | 0 | 18.07.2006 14:00 |