2016-08-10 2 views
0

Ich versuche, 2 von der Gesamtzahl der Elemente in einer Liste in Sightly zu subtrahieren.Unterstützt Sightly wirklich keine arithmetischen Operatoren?

<ul data-sly-list="${javaClass.list}"> 
    <li> 
     <span> ${itemList.size -2 @ context='number'}</span> 
    </li> 
</ul> 

Das Ergebnis ist:

org.apache.sling.scripting.sightly.SightlyException: Parsing-Fehler in Vorlage ...: token Erkennungsfehler auf: '-' für den Ausdruck $ {itemList.size -2 @ context = 'Nummer'}

Muss ich wirklich eine Methode in Java dafür erstellen? Wie:

javaClass.getListCountMinusTwo() 

Ich wäre dankbar für jede Art von Workaround.

+0

BTW 'getListCountMinusTwo' ist Code-Geruch, Sie sollten wahrscheinlich etwas sinnvoller dort haben (wie in der Zeit können Sie entdecken, dass Sie die Zählung durch einen anderen Wert ausgleichen müssen) – Vlad

Antwort

1

Sickly unterstützt nur logische und Vergleichsoperatoren (spec) und das ist beabsichtigt, da die Rendering-Skripts keine Geschäftslogik enthalten sollen, dies sollte von den Modell-/Use-Objekten stammen.

Verwandte Themen