Sortierung lowerCase bei contentSelect
Author: MarcusDau
Publication Date: 3/23/2012 8:48
Hallo!
Kleine Frage kurz vorm Wochenende.
Ich habe folgenden contentSelect:
<CMS_FUNCTION name="contentSelect" resultname="fr_alle_eintraege" context="PAGE">
<CMS_PARAM name="schema" value="Data"/>
<QUERY entityType="Glossar">"
<ORDERCRITERIA attribute="ueberschrift" descending="0"/>
</QUERY>
</CMS_FUNCTION>
Wie man sieht, möchte ich nach der Überschrift aufsteigend sortieren.
Dabei gibt es aber das Problem, dass ich auch Einträge mit einem Kleinbuchstaben am Anfang habe. Diese werden dann (für mich) nicht richtig einsortiert.
Reihenfolge würde also zum Beispiel so aussehen: A B C D E M Z e k v
Kann ich diese Einträge irgendwie direkt im contentSelect nach lowerCase sortieren?
Grüße
Marcus
Tags: contentselect, lowercase, orderchriteria
-
Author: hoebbel - 3/23/2012 12:49
Hallo Marcus,
die direkte Sortierung in der contentSelect Funktion funktioniert nur, wenn die Datenbank die Ergebnisse in der gewünschten Sortierung zurückliefert.
Also musst Du selber sortieren. Ist aber nicht wirklich schwer. Eigentlich müsste hier folgendes funktionieren:
ORDERCRITERIA aus der Funktion entfernen.
Ergebnis so auffrufen:
$CMS_FOR(element,contentSelect.copy.sort(x -> x.text.toLowerCase())$
Und um die nächste Frage gleich vorweg zu nehmen. Mit deutschen Umlauten geht es dann so:
$CMS_FOR(element,contentSelect.copy.sort(x -> x.text.toLowerCase().replaceAll("ö","oe").replaceAll("ä","ae").replaceAll("ü","ue")))$
Viele Grüsse aus Dortmund,
Holger
0
Vous devez vous connecter pour laisser un commentaire.
Commentaires
1 commentaire