html - Delphi 是否有像 Velocity 或 Freemarker 这样的模板引擎?

标签 html delphi web-applications template-engine freepascal

<分区>

对于 Web 应用程序,如果 Delphi 对象属性和方法可以与 HTML 代码“连接”起来,将会很有帮助。

这可以在 HTML 响应构建阶段和请求处理阶段以多种方式使用:

  • 访问服务器端对象属性值以在 HTML 代码中输出它
  • 将服务器端对象属性绑定(bind)到 HTML 表单输入字段,以便 Web 应用程序发送带有当前值的表单 HTML,并在客户端提交表单时将属性设置为输入的值
  • 将一个HTML表单按钮绑定(bind)到一个服务器端对象方法,该方法将在客户端提交表单时执行

我还没有找到一个原生的 Delphi 库,它可以更容易地将这样的 HTML 添加到 Delphi 对象绑定(bind)。

我的问题:

是否有类似 Apache Velocity 的脚本代码生成模板引擎?或 Freemarker (参见下面的示例)我可以在 Delphi 应用程序中使用哪些? (不在 IDE 中——我不是在寻找基于 OTA 的解决方案或 Delphi 代码模板)

模板引擎会将 Delphi 对象绑定(bind)到模板并替换脚本变量,并根据对象中的值执行迭代/条件。模板可以嵌套(调用其他模板)。

典型的用例是动态生成 HTML 代码,但也适用于 Delphi 代码生成器。

速度示例:

<HTML>
<BODY>
Hello $customer.Name!
<table>
#foreach( $mud in $mudsOnSpecial )
   #if ( $customer.hasPurchased($mud) )
      <tr>
        <td>
          $flogger.getPromo( $mud )
        </td>
      </tr>
   #end
#end
</table>

自由标记示例:

<html>
<head>
  <title>Welcome!</title>
</head>
<body>
  <h1>Welcome ${user}!</h1>
  <p>Our latest product:
  <a href="${latestProduct.url}">${latestProduct.name}</a>!
</body>
</html>  

与我正在寻找的类似的其他模板引擎是 Visual Studio's T4 Code GenerationSmarty .

最佳答案

请看这里:http://dvdchief.com/delphi/ 这是一个免费的 delphi 模板引擎,就像 php 的 smarty。

关于html - Delphi 是否有像 Velocity 或 Freemarker 这样的模板引擎?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3870893/

相关文章:

C 到 Delphi 的 union 和结构与位域的转换

用于 Web 应用程序的 node.js golang 复合架构

web-applications - Azure 网站发布使用中的文件失败

html - 从顶部或中心垂直移动图像

delphi - 如何防止在表单未处于事件状态时触发快捷方式

delphi - utf-8字符串的base64编码

javascript - 一种使用 Javascript 和 Jquery 创建点击并拖动 "canvas"用户区域的方法?

Javascript - 数字显示为 NaN 且对象未定义

html - position absolute inside position relative 在父级中给出元素范围

javascript - 如何调整 Launchrock 小部件的大小?