web-dev-qa-db-fra.com

Groovy / Grails: comment trier la liste des objets par id

Classe de formation publique

class PublicTraining{
    static hasMany = [trainingOrder: TrainingOrder]
}

et formation

class TrainingOrder {
    Date createdOn

    static mapping = {
        sort id:"asc"
    }
}

si je veux obtenir toutes les commandes de formation

def orders = publicTrainingInstance.trainingOrder.sort()
println orders // [59,58] (id of orders)

qui ne donne pas d'ordre trié

30
monda

La fonction par défaut sort() est utile pour l'objet Comparable. Si votre classe n'est pas un Comparable, utilisez:

def orders = publicTrainingInstance.trainingOrder.sort { it.id }

Ce code sera trié en utilisant l'ID passé.

Voir les documents: http://groovy.codehaus.org/groovy-jdk/Java/util/Collection.html#sort ()

57
Igor Artamonov