grails按日期排序不起作用

时间:2014-02-23 15:40:21

标签: sorting grails java.util.date

我有名为Roll的域对象,在列表页面上,我想向用户显示迭代列表的所有Roll对象,按输入日期排序。

这是我正在使用的代码

[rollList: Roll.findAll(sort:"rollDate"){userid==uid}]

rollDate是Roll对象中的一个字段,数据类型为java.util.Date

有关为什么输出未按rollDate排序的任何建议。当我遍历gsp页面上的rollList时,它没有排序。

另外,在Roll域对象上我甚至放了这个代码,但它仍然没有排序。

static mapping = { 
    sort "rollDate"
}

谢谢。

3 个答案:

答案 0 :(得分:1)

为什么不使用dynamic finders

Roll.findAllByUserid( uid, [ sort:"rollDate", order: 'desc'] )

应该有用。

findAll( Map, Closure )方法出现的时间不长,也许它没有经过良好的测试......

答案 1 :(得分:0)

您可能还需要在查询中使用订单,然后向其添加订单

[rollList: Roll.findAll(sort:"rollDate", order: 'desc'){userid==uid}]

答案 2 :(得分:0)

在尝试了所提到的两种解决方案后,它仍然无效。所以我觉得前端可能有问题。 在研究更多时,我发现因为我使用的是jquery数据表,所以它曾经重新排序。我找到的解决方案就在这里

jQuery DataTable rows order

所以上面的答案都是正确的。问题实际上是jquery数据表。