我想按日期对grails中的集合进行排序我目前正在执行以下操作:
def pics = Picture.findAllByChild(child, [sort: 'dateCreated', order: 'desc'])
pics.add(Post.findAllByPostedToAll(true))
因为我在列表中添加了更多项目,所以需要按dateCreated降序再次排序 它看起来不像排序类可以做到这一点。 我试过了:
pics.sort(it.dateCreated)
但这是不允许的
答案 0 :(得分:14)
sort
方法接受一个闭包参数,所以正确的调用(带有隐式的parens)是
pics.sort { it.dateCreated }
答案 1 :(得分:2)
您还可以更改关联的默认排序。
在您的图片域类中添加:
static mapping = {
child(sort:'dateCreated', order:'desc')
}
单向一对多关系不支持此功能,但对于双向关系非常有用。