我正在使用带有 Freemarker 模板引擎的 Spark 框架。我将类别列表(具有 getId() 方法的 Java 类)传递给我的模板。
在我的 Freemarker 模板中,我有以下循环,我只需要在 id 大于 1 时显示类别标题。但是,由于某些未知原因,除非删除 <#,否则以下代码不起作用if 条件 > 部分。
<#list categories as category>
<#if category.getId() > 1> category.getTitle() </#if>
</#list>
我想知道 freemarker 是否支持这种动态 <#if> 语句。
最佳答案
它不起作用,因为大于号被视为 #if
的结尾标签。所以实际上你有 <#if category.getId()>
那里,并且 id 不是 boolean 值。试试<#if (category.getId() > 1)>
。 (顺便说一句,只需写 category.id
。在 FreeMarker 中不需要 get...()
-s 。)
关于java - Freemarker 模板引擎 <#if condition> 具有动态条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23874068/