Ordering » Historie » Verze 2

Jakub Jirůtka, 2014-06-24 19:43

1 1 Jakub Jirůtka
h1. Řazení záznamů
2 1 Jakub Jirůtka
3 1 Jakub Jirůtka
Na všechny zdroje vracející kolekce (AtomFeed) lze aplikovat řazení pomocí parametru [[URLParameters#orderBy|orderBy]]. Řadit lze obvykle podle libovolného elementu v _první úrovni_ pod @atom:content@, a to i podle více elementů, přičemž pro každý lze určit směr řazení (vzestupně/sestupně).
4 1 Jakub Jirůtka
5 1 Jakub Jirůtka
6 1 Jakub Jirůtka
h2. Gramatika a sémantika
7 1 Jakub Jirůtka
8 1 Jakub Jirůtka
Zápis výrazu pro řazení odpovídá jednoduché gramatice:
9 1 Jakub Jirůtka
10 1 Jakub Jirůtka
  expression = ordering, 
11 1 Jakub Jirůtka
             [ ",", ordering ];
12 1 Jakub Jirůtka
ordering   = identifier,
13 1 Jakub Jirůtka
             [ "@", direction ];
14 1 Jakub Jirůtka
identifier = ? ["a"-"z","A"-"Z","_","0"-"9","-"]+ ?
15 1 Jakub Jirůtka
direction  = "asc" | "desc";
16 1 Jakub Jirůtka
17 1 Jakub Jirůtka
kde @identifier@ je název elementu, podle kterého chceme řadit, a @direction@ je směr řazení – @asc@ vzestupný (výchozí), @desc@ sestupný.
18 1 Jakub Jirůtka
19 1 Jakub Jirůtka
20 1 Jakub Jirůtka
h2. Příklady
21 1 Jakub Jirůtka
22 1 Jakub Jirůtka
* "<code>/teachers?orderBy=firstName</code>":/api/3b/teachers?orderBy=firstName – seřadí vyučující podle křestního jména vzestupně od A do Z
23 1 Jakub Jirůtka
* "<code>/teachers?orderBy=firstName@desc</code>":/api/3b/teachers?orderBy=firstName@desc – seřadí vyučující podle křestního jména sestupně od Z do A
24 1 Jakub Jirůtka
* "<code>/teachers?orderBy=firstName,lastName</code>":/api/3b/teachers?orderBy=firstName,lastName – seřadí vyučující podle křestního jména a příjmení vzestupně od A do Z
25 1 Jakub Jirůtka
* "<code>/teachers?orderBy=firstName@desc,lastName@desc</code>":/api/3b/teachers?orderBy=firstName@desc,lastName@desc – seřadí vyučující podle křestního jména a příjmení sestupně od Z do A
26 1 Jakub Jirůtka
* "<code>/teachers?orderBy=firstName@desc,lastName@asc</code>":/api/3b/teachers?orderBy=firstName@desc,lastName@asc – seřadí vyučující podle křestního jména sestupně a podle příjemní vzestupně