问题标签 [vtl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
velocity - 速度模板语言动态变量
我阅读了所有Velocity 用户指南,但看不到如何访问动态变量。
场景:
我如何才能$u14
使用$var
?
在 php 中:
$$var (vm fail)
预期结果:MARCOS SANCHEZ
谢谢。
exception - 如何从 Velocity 模板脚本 (VTL) 中抛出用户定义的异常?
如何从 Velocity 模板脚本 (VTL) 中引发用户定义的异常?
在我的速度脚本中,我需要根据条件抛出异常,以便调用者可以捕获异常并向最终用户提供有用的错误消息。
例如。
在上面的示例中,如果密码字段 1 和密码字段 2 不匹配,则应引发适当的异常并需要将其传播给最终用户。
有没有办法从速度脚本中实现这一点?如果不是,请建议另一种方法。
java - 如何从 Velocity 模板访问对象的公共字段
这是我的对象类:
我将它添加到速度上下文中,如下所示:
但是,在编写模板时,以下内容不会呈现地址字段(但是,当我将 getter 添加到 Address 类时它可以正常工作)
是否可以在不添加 getter 的情况下从 Velocity 访问对象上的公共字段?
variables - 是否可以在速度模板中使用不同的模式进行变量替换
我有许多文本文件想用作速度模板,但变量的实际符号是:{my_variable_x}。
在默认的 Velocity 模板中,它将是这样的: $my_variable_x
有没有办法将速度配置为使用与经典 $variable 不同的符号?
我阅读了用户指南和开发者指南,但没有找到与我的问题相关的任何内容。
intellij-idea - IntelliJ IDEA 覆盖 $user
这是一个非常简单的问题,但我无法使用 SO-Search 和 Google 找到答案。
是否可以$user
全局覆盖文件模板中使用的默认 VTL 变量,而不是在每个模板中设置它#set($user = "...")
?
就像 IntelliJ 本身的某种设置脚本一样,我可以在哪里更改值?
提前致谢。
顺便说一句,我使用的是 IntelliJ Ultimate 12.1.6。
velocity - 带有 Map 的嵌套 foreach 在 Velocity 中无法正常工作
我想使用 Velocity 生成下面的代码片段。
我的 template_fruits.vm 文件如下。
问题在于语句: types_$fruitName.add("$fruitType.name"); 它没有正确评估 $fruitName 。但是,如果我将语句修改为:types_($fruitName).add("$fruitType.name");,它会被正确评估,但值用括号括起来。我不明白评估的括号技巧。
下面的代码可用于加载 $fruitsMap
模板执行相关代码:
声明有什么问题的任何提示-> types_$fruitName.add("$fruitType.name"); 会有帮助的。
谢谢
velocity - 从远程位置加载 *.vtl 文件
dotCMS 是否可以从远程源解析 vtl 文件?
java - Apache Velocity 宏默认参数值
我想更新在多个不同 .vtl 文件之间共享的宏以包含新参数。但是,我只想更改其中一个 .vtl 文件中的调用,而其他文件保持不变。所以,我本质上想添加一个可选参数,或者如果没有提供参数,则添加一个具有默认值的参数。
文档(此处)在“#macro”部分中提到了可选的默认值,但经过几个小时的烦躁,我终生无法弄清楚正确的语法是什么。
所以我想采用现有的宏:
并把它变成一个宏,如:
我可以通过这两个调用中的任何一个正确调用它并获得指定的输出:
我已经尝试了文档中指定的所有排列,但找不到任何有效的方法。有谁知道正确的语法?有没有可能我丢失的财产?
我正在使用 Velocity 1.7 和 VelocityTools 2.0。如果这很重要,我也在使用该设置
velocimacro.arguments.strict=true
。但是,如果不进行大量更新/重新测试,我无法轻松更改此属性。
velocity - 速度渲染;foreach 返回 true 的问题
我有一个看起来像这样的模板:
在针对示例有效负载进行渲染时,我得到如下信息:
如何处理 foreach 返回 'true' ?