我想在条件返回值中添加分页

nan*_*ini 1 grails pagination

params.max = Math.min(params.max ? params.int('max') : 2, 100)
orders=OrderInfo.createCriteria().listDistinct()
Run Code Online (Sandbox Code Playgroud)

对于分页,我们需要将params传递给列表,例如.Post.list(params).我怎么把它传递到这里?我试过但是给出了一个错误.

我们还需要总数.但我无法设置参数

orders=OrderInfo.createCriteria().listDistinct()
Run Code Online (Sandbox Code Playgroud)

请提示正确的代码

aio*_*los 8

如果将params作为list方法的第一个参数传递,则会获得PagedResultList具有该方法的参数getTotalCount().有了这个,您可以获得实例总数.

params.max = Math.min(params.max?.toInteger() ?: 25, 100)
params.offset = params.offset ? params.offset.toInteger() : 0

def orderInfoCriteria = OrderInfo.createCriteria()
def results = orderInfoCriteria.list(params) { // your criteria code ... }
log.debug "Getting ${results.size()} order infos of ${results.totalCount}"
Run Code Online (Sandbox Code Playgroud)

阅读文档以获取有关critera的更多信息.