Paginate Results
Basic Pagination
page = 1
per_page = 10
posts = Post.order(created_at: :desc)
.limit(per_page)
.offset((page - 1) * per_page)
.allPagination Helper
def paginate(query, page : Int32 = 1, per_page : Int32 = 10)
offset = (page - 1) * per_page
query.limit(per_page).offset(offset).all
end
# Usage
posts = paginate(Post.where(published: true), page: 2, per_page: 20)Pagination Info
Cursor-Based Pagination
Timestamp-Based Pagination
Keyset Pagination
Web API Example
Verify Pagination Works
Related
Last updated
Was this helpful?