grails - 如何在Grails中以相反的顺序遍历对象列表?

标签 grails grails-2.0 gsp grails-domain-class

从在我的用户域模型中按降序排列的GORM数据库对象列表中,我想按升序对它们进行排序(即在 View 中按相反的顺序)。例如,从数据库中获取用户的最新书籍,但以最新书籍倒数的相反顺序将它们插入到Dom中。

如何在我的GSP中执行每个反向操作?

Controller :

def books = user.books

GSP:
<g:each in="${books}" var="book">${book}</g:each>

最佳答案

<g:each in="${books.reverse()}" var="book">${book}</g:each>
编辑

被带走了:)。我宁愿建议:

Controller 中的def books = user.books?.reverse()

(关注点分离, View 不应具有操作model的逻辑)

更新:

如果在books中未排序User,则需要显式排序。
def newestBooks = user.books?.asList().sort{it.publishDate}
反向排序使用
def newestBooks = user.books?.asList().sort{-it.publishDate}

关于grails - 如何在Grails中以相反的顺序遍历对象列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16430748/

相关文章:

grails - 从登录的用户访问另一个对象

postgresql - Groovy-grails gsp表中的sql.rows

grails - 使用GSP表达式内的变量引用Groovy Map

twitter-bootstrap - GRAILS 3.1.0 不显示 Bootstrap 字形

grails - 如何在Grails中注册自定义json解串器/解析器?

grails - grails 中的编码和解码如何使用grails 中的decodeHTML 和encodeAsHTML 进行?

grails - 如何在Grails中限制类的关系元素?

forms - 将_form.gsp模板从Grails 2导入到Grails3

grails - 在 Controller 中使用快捷方式重定向

grails DefaultGrailsDomainClass.getIdentifier 总是返回 'id 作为标识符