Java 如何获取freemarker中列表的大小?
我已经创建了一个内容模板,用户可以在其中创建多个卡片/盒子。它运行良好,但如果用户只创建一个盒子,我想更改css。我用getList()大小尝试了它,但它不起作用。你知道我怎么证明尺寸是1吗Java 如何获取freemarker中列表的大小?,java,liferay,freemarker,Java,Liferay,Freemarker,我已经创建了一个内容模板,用户可以在其中创建多个卡片/盒子。它运行良好,但如果用户只创建一个盒子,我想更改css。我用getList()大小尝试了它,但它不起作用。你知道我怎么证明尺寸是1吗 <div id="my-cards"> <#list boxen.getSiblings() as box> <#assign i = box.getList()?size> <#if i==1> <p
<div id="my-cards">
<#list boxen.getSiblings() as box>
<#assign i = box.getList()?size>
<#if i==1>
<p>There is one box</p>
</#if>
<!-- Card-->
<div class="card-box mb-3">
<!-- Image-->
<div class="card-pic">
<#if box.image.getData() != "">
<img src="${box.image.getData()}" />
</#if>
</div>
<!-- Content-->
<div class="card-box-content">
<#if box.headline.getData() != "">
<h2 class="title">${box.headline.getData()}</h2>
</#if>
<#if box.content.getData() != "">
<p class="description">${box.content.getData()}</p>
</#if>
<div class="card-box-footer">
<br />
</div>
</div>
</#list>
</div>
有一个盒子
${box.headline.getData()}
${box.content.getData()}
要获得列表的大小,必须使用list?size
,这意味着
boxen.getsibles()?此示例的大小为
。我认为box.getList()
是无效的
检查此示例:
<#assign listA = ['one']>
<#assign listB = ['one' , 'two']>
<#list listA as element>
<#if (listA?size = 1)>
${element}
</#if>
</#list>
<#list listB as element>
<#if (listB?size = 1)>
${element}
</#if>
</#list>
${element}
${element}
仅满足第一个条件,输出为:1