代码之家  ›  专栏  ›  技术社区  ›  hering Robyn Liu

Grails:有没有一种方法可以让findall()不使用查询,而是使用分页和排序?

  •  8
  • hering Robyn Liu  · 技术社区  · 16 年前

    正如我在另一个答案中注意到的那样 question 在GORM中测试finder方法时存在一些问题。
    我想从 Something 并且支持排序和分页,所以我写了:

    SomethingListVO findAllSomethings(int offset = 0, int limit = 50) {
        def somethingCount = Something.count()
        def somethings = Something.findAll([max: limit,
                                                offset:offset,
                                                sort: "number",
                                                order: "asc"])
        return new SomethingListVO(somethingCount,somethings)
    }
    

    这不起作用,因为如果要添加分页或排序之类的内容,则需要进行查询。但是如果你添加一个像 SELECT * FROM Something 你的测试会失败。

    是否有任何方法可以测试这种方法(使用分页/排序)?
    This approach 似乎提供了更多的特性,但它不能与我的Grails安装一起工作。

    1 回复  |  直到 16 年前
        1
  •  14
  •   Aaron Saunders    16 年前

    只需为您的查询执行此操作

    Something.list([max: limit,offset:offset,sort: "number",order: "asc"])
    
    推荐文章