Gibt es eine Template Engine wie Velocity oder Freemarker für Delphi? [geschlossen
Für Webanwendungen wäre es hilfreich, wenn Delphi-Objekteigenschaften und -Methoden mit HTML-Code "verbunden" werden könnten.
Dies kann auf viele Arten verwendet werden, sowohl während der HTML-Antworterstellungsphase als auch während der Anforderungsverarbeitungsphase:
reifen Sie auf einen serverseitigen Objekteigenschaftswert zu, um ihn im HTML-Code auszugebebinden Sie eine serverseitige Objekteigenschaft an ein HTML-Formulareingabefeld, sodass die Webanwendung das Formular-HTML mit dem aktuellen Wert sendet, und setzen Sie die Eigenschaft auf den eingegebenen Wert, wenn der Client das Formular @ sendebinden Sie eine HTML-Formularschaltfläche an eine serverseitige Objektmethode, die ausgeführt wird, wenn der Client das Formular @ sendeIch habe keine native Delphi-Bibliothek gefunden, die das Hinzufügen von HTML zur Delphi-Objektbindung erleichtern würde.
Meine Frage
ibt es eine Template-Engine für die Generierung von Skriptcode wieApache Velocity oder Freemarker (siehe Beispiele unten) welche kann ich in Delphi-Anwendungen verwenden? (nicht in der IDE - ich suche keine OTA-basierte Lösung oder Delphi-Codevorlagen)
Die Template-Engine würde Delphi-Objekte an eine Vorlage binden und die Skriptvariablen ersetzen und Iterationen / Bedingungen basierend auf den Werten in den Objekten ausführen. Vorlagen können verschachtelt werden (andere Vorlagen aufrufen).
Ein typischer Anwendungsfall wäre die dynamische Generierung von HTML-Code, die jedoch auch für Delphi-Codegeneratoren funktioniert.
eispiel @Velocity:
<HTML>
<BODY>
Hello $customer.Name!
<table>
#foreach( $mud in $mudsOnSpecial )
#if ( $customer.hasPurchased($mud) )
<tr>
<td>
$flogger.getPromo( $mud )
</td>
</tr>
#end
#end
</table>
Freemarker Beispiel:
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>
Andere Template-Engines, die dem, was ich suche, ähnlich sind, sindVisual Studios T4 Code Generation und Smarty.