Groovy/Grails: как отсортировать список объектов по идентификатору
Класс PublicTraining
class PublicTraining{
static hasMany = [trainingOrder: TrainingOrder]
}
и класс TrainingOrder
class TrainingOrder {
Date createdOn
static mapping = {
sort id:"asc"
}
}
если я хочу получить все заказы на обучение
def orders = publicTrainingInstance.trainingOrder.sort()
println orders // [59,58] (id of orders)
который не дает отсортированных порядков
Ответы
Ответ 1
sort()
умолчанию sort()
полезна для Comparable
объекта. Если ваш класс не является Comparable
, используйте:
def orders = publicTrainingInstance.trainingOrder.sort { it.id }
Этот код будет сортироваться с использованием переданного идентификатора.
См. Документы: http://groovy.codehaus.org/groovy-jdk/java/util/Collection.html#sort()