Velocity nulls and empty strings

后端 未结 3 1667
一生所求
一生所求 2020-12-15 17:14

In velocity I have a variable which its value is null. I don\'t want to display anything in that case.

Currently the template engine translates \"\" to

相关标签:
3条回答
  • 2020-12-15 17:25

    You want Quiet Reference Notation: $!a

    Here's your example:

    This is the variable $!a.
    

    If $a is null or "", Velocity will render:

    This is the variable .
    

    Official Guide section: https://velocity.apache.org/engine/devel/user-guide.html#quietreferencenotation

    0 讨论(0)
  • 2020-12-15 17:26

    $!a does the trick. You can use this form directly without an if check.

    0 讨论(0)
  • 2020-12-15 17:31

    Another alternative is to modify your if statement per Checking for Null (thanks for the link @xavi-lópez):

    Approach 2: Use the fact that null is evaluated as an empty string in quiet references. (cf. http://velocity.apache.org/engine/devel/user-guide.html#quietreferencenotation)

    So, your code would be:

    #set ( $a = "")
    #if ("$a" != "") 
       assert("never prints a neither gets here: " + $a)
    #end
    
    0 讨论(0)
提交回复
热议问题