Alg*_*ron 1 velocity liferay-6 liferay-velocity
我正在通过为结构添加新字段来更改我的liferay速度模板.例如'heading1'然后将这个新字段添加到模板:
<h1>Heading is: $heading1.data</h1>
Run Code Online (Sandbox Code Playgroud)
但如果结构领域尚未填补,结果是:
标题是:$ heading1.data
所以我想我可以解决这个问题:
#if($heading1.data!="")<h1>Heading is: $heading1.data</h1>#end
Run Code Online (Sandbox Code Playgroud)
但结果仍然是:
标题是:$ heading1.data
如果我打开网页内容并发布它然后结果是正确的,它没有显示任何内容,但我不想找到每个类似的网页内容并开始手动发布.
那么有没有办法检查标题是否未填充?
谢谢.
您可以使用静默引用来告诉Velocity不要显示空引用:
<h1>Heading is: $!heading1.data</h1>
Run Code Online (Sandbox Code Playgroud)
或者您可以直接测试其内容是否存在:
#if($headings1.data) <h1>Heading is: $heading1.data</h1> #end
Run Code Online (Sandbox Code Playgroud)
高达Velocity 1.7,如果引用为null或未初始化,则此测试将为false,但如果引用包含空字符串,则仍为true.在下一版本中,空字符串也将评估为false.