Is there a Template Engine like Velocity or Freemarker for Delphi? [closed]
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this questionFor web applications, it would be helpful if Delphi object properties and methods could be "connected" with HTML code.
This could be used in many ways, both during the HTML response build stage and the request processing stage:
- access a server-side object property value to output it in the HTML code
- bind a server-side object property to a HTML form input field, so that the web application sends the form HTML with its current value, and set the property to the entered value when the client submits the form
- bind a HTML form button to a server-side object method, which will be executed when the client submits the form
I have not found a native Delphi library which would make it easier to add such HTML to Delphi object binding.
My question:
Is there a template engine for scripted code generation like Apache Velocity or Freemarker (see examples below) which I can use in Delphi applications? (not in the IDE - I am not lookig for a OTA based solution, or Delphi code templates)
The template engine would bind Delphi objects to a template and replace the script variables, and execute iterations / conditions based on values in the objects. Templates can be nested 开发者_JS百科(call other templates).
A typical use case would be the dynamic generation of HTML code, but also work for Delphi code generators.
Velocity example:
<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 example:
<html>
<head>
<title>Welcome!</title>
</head>
<body>
<h1>Welcome ${user}!</h1>
<p>Our latest product:
<a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>
Other Template Engines which are similar to what I am looking for are Visual Studio's T4 Code Generation and Smarty.
Please have a look here: http://dvdchief.com/delphi/ This is a free template engine for delphi like smarty for php.
Delphi on Rails, hosted at google code, may have something that you can use. http://code.google.com/p/delphionrails/wiki/Getting_Started
精彩评论