【问题标题】:grails sort by date not workinggrails按日期排序不起作用
【发布时间】:2014-02-23 15:40:21
【问题描述】:

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

这是我正在使用的代码

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

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

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

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

static mapping = { 
    sort "rollDate"
}

谢谢。

【问题讨论】:

  • 它在 findAll 查询中按预期工作,而在映射块中没有上述条目。 gsp是什么样子的?

标签: sorting grails java.util.date


【解决方案1】:

你为什么不使用dynamic finders

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

应该可以。

findAll( Map, Closure )方法出现的时间不长,可能是没测试好...

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      【解决方案3】:

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

      jQuery DataTable rows order

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

      【讨论】:

        猜你喜欢
        • 2017-03-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多