Apache Velocity - if子句

时间:2018-06-04 09:36:47

标签: templates if-statement apache-velocity

我使用Apache Velocity创建电子邮件模板。 我有一个邮件消息,其中包含一个包含元素列表的表,为了创建它我使用了#foreach

在此表中,我将添加一个包含条件字符串的列,如果该元素为空,则字符串为string1如果不为空,则为string2

这是我的代码

 #foreach( $item in $list )
        <td style="max-width: 140px; word-wrap: break-word;">
        #if(${value} not null) 'String1' #else 'String2'#end</td>
 #end

错误日志

 org.apache.velocity.runtime.parser.ParseException: Encountered "null" at line 25, column 131. Was expecting one of:
    "[" ...
    "{" ...
    "(" ...
    <STRING_LITERAL> ...
    "true" ...
    "false" ...
    <INTEGER_LITERAL> ...
    <FLOATING_POINT_LITERAL> ...
    <IDENTIFIER> ...
    "{" ...
    "[" ...
        at org.apache.velocity.runtime.parser.Parser.generateParseException(Parser.java:3679)

我在堆栈中找不到任何帮助......任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:1)

我认为这可以在你的情况下运行:

#if( $value)
    <td style="max-width: 140px; word-wrap: break-word;">String1</td>
#else
    <td style="max-width: 140px; word-wrap: break-word;">String2</td>
#end

尝试阅读此question