sorting - 如何对grails对象的persistentSet进行排序?

标签 sorting grails domain-model persistent-set

我有两个域模型:

class Resource{
   String name

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

class ResourceGroup{
   String groupName

   static hasMany = [resources: Resource]
}

Controller :
def resGroups = ResourceGroup.findAll()
render (
        view: "index",
        model: [resourcegroups: resGroups]
)

所以现在在我的gsp中:
<g:each in="${resourcegroups}" var="item" status="i">
   ...
   <g:each in="${item.resources}" var="res" status="y">
       <!-- THESE ITEM.RESOURCES ARE UNSORTED! -->
   </g:each>
   ...
</g:each>

我的问题是如何对“item.resources”进行排序?这是一个持久的休眠状态!我以为可以用映射的排序名称'asc'来处理,但这不起作用:-(

最佳答案

您不能对一对多或多对多关系进行默认排序。请参阅documentation here,特别注意底部的注释:

These mappings will not work for default unidirectional one-to-many or many-to-many relationships because they involve a join table. See this issue for more details. Consider using a SortedSet or queries with sort parameters to fetch the data you need.



您指定的默认排序实际上会对Resource对象列表进行排序(即,如果您获得像Resource.getAll()这样的列表,则列表将按照您指定的顺序进行排序)。

要执行您想做的事情,请考虑创建一个标签库,如Don所建议的here

关于sorting - 如何对grails对象的persistentSet进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8439433/

相关文章:

PHP 从数组中获取最大值

java - 现金分配逻辑 - Java

grails - 如何在另一个异步线程中使用 grails 模板渲染方法

maven - Grails 2.5.0 Maven构建问题

Java 域模型 : categories with specific subcategories

algorithm - 为什么 heapsort 的空间复杂度是 `O(1)` 递归 heapify 过程?

c++ - 用 vector 实现选择排序

java - 重用java业务逻辑

UML 域模型 - 如何对两个实体之间关联的多个角色进行建模?

java - 什么是 Java 域模型?