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