web-dev-qa-db-fra.com

Freemarker Attribuer la longueur de la liste à la variable locale

Le code de Freemarker suivant provoque une exception

<#assign i= it.getList().size()>
<#list it.getList() as elem>
    <#if i==1>
    <li>${elem.name}</li>
    <#else>
    <li class="marked">${elem.name}</li>
    </#if>
    <#assign i = i-1>
</#list>

L'exception suivante est lancée:

Hash attendu. IT.Betlist () Évalué à la place à Freemarker.Template.Simplate

Quelqu'un sait pourquoi? Comment puis-je affecter la longueur de la liste à ma variable i?

21
cuh

J'ai compris que cela n'avait pas compris la syntaxe du sizeintégré . La syntaxe droite d'attribution de la taille d'une liste à une variable locale est

<#assign i = it.getList()?size>
38
cuh