Max and offset in Grails?

I have a list of data and I want to paginate. But I do not understand how to use max. Here is my simple request code,

def users = User.where{
  roles {
     id in roles.id 
  }
}.list(max: 1)
println users
  • When I set max to 1, it shows 1 data,
  • I set max to 2, it shows 2 data,
  • I set max to 3, it shows 2 data,
  • I set max to 4, it shows 3 data and
  • I set max to 5, it shows 4 data

And I did not understand what offset is. If I want to show 5 data per page, what should my offset be?

+4
source share
1 answer

Write, like this one, I took it from official documents:

def users = User.createCriteria().list (max: 10, offset: 10) {
    roles {
        'in'('id', roles*.id) 
    }
}

createCriteria docs params.offset params.max . :

def users = User.createCriteria().list (max: params.max, offset: param.offset) {...}

, , . :)

+1

All Articles