Muitas vezes precisamos que os registros de uma classe de domínio venham ordenados por um determinado campo na listagem padrão. Isso é fácil de fazer em Grails! Basta definir o atributo sort dentro da seção mapping da nossa classe.
static mapping = {
sort 'campo'
}
Se precisarmos especificar a ordem (ascendente ou descendente), também é bem simples:
static mapping = {
sort campo: 'asc' //ou 'desc'
}
Mas como fazer para ordenar por dois campos ao mesmo tempo? Simples também:
static mapping = {
sort campo: 'asc', outroCampo: 'asc'
}
Isso é possível pois o método sort definido dentro do bloco mapping recebe uma String ou um Map como parâmetro. Quando recebe um Map, ele é inteligente o suficiente para realizar a ordenação por todos os campos e ordens informados.