Freemarker模板引擎< #if condition>有动态的

时间:2014-05-26 16:09:37

标签: java templates freemarker apache-spark

我正在使用带有Freemarker模板引擎的Spark框架。我将类别列表(具有getId()方法的Java类)传递给我的模板。

在我的Freemarker模板中,我有以下循环,我只需要在其id大于1时显示类别标题。但是,由于某些未知原因,以下代码不起作用,除非我删除< #if condition>部分。

<#list categories as category>
   <#if category.getId() > 1> category.getTitle() </#if>
</#list>

我想知道freemarker是否支持这种动态&lt;#if&gt;声明。

1 个答案:

答案 0 :(得分:1)

它不起作用,因为大于号符号被视为#if标记的结尾。所以实际上你有<#if category.getId()>,而id不是布尔值。试试<#if (category.getId() > 1)>。 (顺便说一下,只需写category.id。在FreeMarker中不需要get...() - 。