Grails PagedResultList - PullRequest
       5

Grails PagedResultList

2 голосов
/ 01 августа 2011

Есть ли способ получить PagedResultList в Grails без использования критериев?Я хотел бы избежать критериев, поскольку они немного сложнее и делают юнит-тестирование довольно раздражающим.Код ниже

def pagedResultList = MyDomainClass.createCriteria().list(max:10, offset:0) 
                                                    { order("id", "asc") }

//Below does not return pagedResultList
def aList = MyDomainClass.list(sort:"id", order:"asc", max:10, offset: 0)

Ответы [ 2 ]

4 голосов
/ 18 октября 2012

Это похоже на ошибку в Grails 2.x, потому что нет конструктора, который бы просто брал список. Сравните http://grails.org/doc/2.1.0/api/grails/orm/PagedResultList.html и http://docs.huihoo.com/grails/1.3.7/api/grails/orm/PagedResultList.html

3 голосов
/ 01 августа 2011

PagedResultList просто используется для переноса результатов запросов на основе критериев (вы можете увидеть его использование в источнике здесь ). Если вы действительно хотите его использовать, вы всегда можете просто вызвать конструктор напрямую , так как он будет обрабатывать любой список. Конечно, свойство totalCount (что, вероятно, вас интересует) будет тогда не задано.

Если идея состоит в том, чтобы получить как список постраничных результатов, так и общее количество результатов, я не знаю никакой магии, которая может получить оба в одном запросе (даже использование PagedResultList в источнике, связанном с вышеуказанными проблемами). два запроса).

...