Templates 通用模板/配置语法
我有许多用不同语言(Java、JavaScript、PHP等)编写的应用程序。他们的视图/表示层以各种格式显示内容:HTML、纯文本等 我希望在每个应用程序中以大致相同的方式显示一些文本/数字数据。当然,根据输出格式,结果会略有不同(例如,如果输出HTML,则必须运行一些HTML编码函数,如果输出纯文本,则必须忽略链接等内容) 所以我想用某种抽象的配置语言来存储格式化信息。然后,每个应用程序都可以解析格式信息,将其转换为自己语言的代码,并运行代码生成实际的显示文本 例如: Welcome <username>. Your balance is <balance format:usDollars>. <if returning>You last logged in on <lastLoginDate format:m/d/Y></if> 欢迎 你的余额是。 您上次登录Templates 通用模板/配置语法,templates,formatting,model-view-controller,template-engine,Templates,Formatting,Model View Controller,Template Engine,我有许多用不同语言(Java、JavaScript、PHP等)编写的应用程序。他们的视图/表示层以各种格式显示内容:HTML、纯文本等 我希望在每个应用程序中以大致相同的方式显示一些文本/数字数据。当然,根据输出格式,结果会略有不同(例如,如果输出HTML,则必须运行一些HTML编码函数,如果输出纯文本,则必须忽略链接等内容) 所以我想用某种抽象的配置语言来存储格式化信息。然后,每个应用程序都可以解析格式信息,将其转换为自己语言的代码,并运行代码生成实际的显示文本 例如: Welcome <
我的问题是:我需要从头发明这样的语法吗?或者是否有一种现有的跨平台模板/格式语言?我建议查看XSLT并以XML形式传递数据。这就是创建XSLT的目的(您可以转换为纯文本或HTML,现在大多数主流语言都有XSLT库。JSON模板正是为此目的而设计的。它有JavaScript、Python、PHP和Java实现。需要一些帮助,以最新功能更新PHP和Java版本
这听起来是个不错的主意。然而,我花了几个小时试图让XSLT做一些简单的事情,比如格式化日期,我准备打破一些东西。像EXSLT、FunctX或xsltsl这样的“标准”库似乎都不起作用。不过,我会继续尝试……哎呀:(好的一面是,如果这能奏效,你的简历上会有一个重要的XSLT缺口。+1表示坚持!