Grails sortableColumn使用Object Id而不是Name

时间:2012-06-12 21:08:04

标签: sorting grails object

我有一个资源列表,其中包含管理器,这些资源也是我系统中的资源。我想按名字对资源列表进行排序。我发现Grails正在按资源ID排序列表,而不是我指定的字段。

<g:sortableColumn property="orgRole" title="Org Role" />

<g:each in="${resourceInstanceList}" status="i" var="resourceInstance">
   <td>${fieldValue(bean: resourceInstance, field: "manager")}</td>
   <!--<td> ${resourceInstance.manager.toString()} </td>-->
</g:each>

我已经在我的资源上定义了静态映射,以按我的'name'属性排序,我有一个我尝试调用的toString方法,它也返回对象的'name'作为值。仍然看到列表按Integer'id'属性排序,该属性与数据库中的序列相关联。

1 个答案:

答案 0 :(得分:0)

需要在sortableColumn上定义精度,而不是在td上定义。我应该使用这个:<g:sortableColumn property="orgRole.name" title="Org Role" />这明确告诉Grails我想要使用哪个字段,否则它依赖于对象的默认id元素。