Skip to content

Redesign Paginate API #223

@si3nloong

Description

@si3nloong

The current Paginate API is quite frustrating, it's not user-friendly at all, especially when we use it for GraphQL, a lot of boilerplate codes. Suggesting converting it to iteration basic.

Proposed API :

result, err := db.Paginate(ctx, actions.Paginate())
if err != nil {
   panic(err)
}

result.StartCursor()
result.EndCursor()
result.ForEach(func(v T) {})
result.HasNext()
result.HasPrev()
result.Before(ctx, cursor)
result.After(ctx, cursor)

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions