Ich habe eine JBake-Vorlage in FTL geschrieben. Niemand benutzt JBake, oder? Nun, das ist gut, aber es gibt Informationen wie eine Liste aller Tags, die in den Artikeln auf der Website verwendet werden, und es scheint, dass dies in der Reihenfolge angeordnet ist, in der JBake die zu verarbeitenden Artikeldaten crawlt und sie findet. ist. Die Bestellung ist nicht in Ordnung.
Wenn Sie es so löschen, wie es ist, wird es schlecht aussehen. Es spielt keine Rolle, welche Reihenfolge Sie verwenden, daher sollten Sie diese regelmäßig arrangieren. Deshalb habe ich das FTL-Build-In überprüft.
Deshalb schaue ich mir die FreeMarker-Site an. Dann gibt es das gewünschte Build-In.
TEMPLATE
<#assign ls = ["whale", "Barbara", "zeppelin", "aardvark", "beetroot"]?sort>
<#list ls as i>${i} </#list>
OUTPUT
aardvark Barbara beetroot whale zeppelin
Ich werde Zahlen, Zeichenfolgen, Datumsangaben und Boolesche Werte sortieren, und es gibt auch? Reverse (Übersetzung).
Oh ja, das ist in Ordnung. FTL hat eine Menge unbekannter Nanika darin versteckt, seien Sie also wachsam. Kann jemand das Dokument übersetzen? Ich kann es nicht auf Englisch lesen, aber meine Augen rutschen ab.
Aus diesem Grund denke ich, dass es sich um eine Geschwindigkeitslösung handelt. Deshalb schreibe ich die folgende Beschreibung und backe (in JBake wird der Konvertierungs- / Generierungsprozess von Website-Inhalten als Backen bezeichnet).
TEMPLATE
<#--Sortieren und ausgeben(?gerade Sortierung hinzugefügt) -->
<#list alltags?sort as tag>
<span>${tag}</tag>
</#list>
Dann ist es eine unerwartete Ausnahmemeldung, Frau.
Failed to render file. Cause:
freemarker.core.NonSequenceException:
For "?sort" left-hand operand:
Expected a sequence, but this has evaluated to a collection
(Passend abgekürzt)
Kurz gesagt, Sie sagen: "Es ist keine Sequenz, können Sie nicht sortieren? (Kostenlose Übersetzung)". Ich weiß nicht, warum es in Collection nicht funktioniert, obwohl die Sortierung implementiert ist! ??
<#--Setzen Sie es wieder in Sequenzen-->
<#assign seq=[]/>
<#list alltags as tag>
<#assign seq=seq+[tag]/>
</#list>
<#--Sortieren und ausgeben-->
<#list seq?sort as tag>
<span>${tag}</tag>
</#list>
Ich habe nur Listen und Array-Elemente mit <#list> gedreht, daher habe ich nicht gedacht, dass es einen solchen Unterschied zwischen Sequenz und Sammlung gibt. Ich meine? Sortieren, ich denke, es ist eine grobe Implementierung.