Freemarker PDF/Email 模板列表过滤器

Freemarker PDF/Email template list filter

我想在 Netsuite HTML/email 模板中制作过滤项目列表。似乎这行代码无法使用 freemarker 对其进行处理。

<#assign xs = [1, -2, 3, 4, -5]>
Positives:
<#list xs?filter(x -> x > 0) as x>${x} </#list>
Negatives:
<#list xs?filter(x -> x < 0) as x>${x} </#list>

你们能给我一些关于如何实现这一目标的见解吗?非常感谢您!我是初学者,一直在搜索这个,不幸的是一点运气都没有。

看起来 NetSuite 使用的是 FreeMarker v2.3.26,并且 filter 内置是在 2.3.29 中添加的。

这是一种不用 filter 的方法:

<#assign xs = [1, -2, 3, 4, -5]>
<#assign xpos = []>
<#assign xneg = []>

<#list xs as x>
    <#if x gt 0>
        <#assign xpos = xpos + [x]>
    <#elseif x lt 0>
        <#assign xneg = xneg + [x]>
    </#if>
</#list>

Positives:
<#list xpos as x>${x} </#list>

Negatives:
<#list xneg as x>${x} </#list>