我正在开发一个 grails 应用程序,在此我必须在 list.gsp 上应用过滤器框。当我使用以下查询(在我的服务中)进行过滤时,我得到分页列表 :
def clientCriteria = TripOrder.createCriteria()
def searchResults = clientCriteria.list(max: params.max, offset: params.offset, sort: params.sort, order: params.order){
ilike("origin", "${searchFor}%")
}
println searchResults.getTotalCount()
[searchResults: searchResults, searchResultSize: searchResults.getTotalCount()]
但我的问题是,当我使用 findAll 时,我无法获取分页列表,查询如下:
def searchResults = TripOrder.findAll("from TripOrder as t where t.status.status=:status", [status: searchFor], [max: maximum, sort: params.sort, order: params.order])
println searchResults.size()
[searchResults: searchResults, searchResultSize: searchResults.size()]
Note:由于某些原因,我必须使用 findAll() HQL 而不是条件查询。
以上结果仅提供等于 max 的列表数量,而不是提供分页列表.
请为我提供使用 findAll() 获取分页列表的解决方案。
Thanks.