Add AbsoluteListOptions
(#17028)
This PR adds a `ListOptions` type which is not paged but uses absolute values. It is implemented as discussed in Discord. Extracted from #16510 to clean that PR.
This commit is contained in:
parent
0a542dd59f
commit
87505a9464
29 changed files with 161 additions and 58 deletions
|
@ -332,7 +332,7 @@ func (u *User) GetFollowers(listOptions ListOptions) ([]*User, error) {
|
|||
Join("LEFT", "follow", "`user`.id=follow.user_id")
|
||||
|
||||
if listOptions.Page != 0 {
|
||||
sess = listOptions.setSessionPagination(sess)
|
||||
sess = setSessionPagination(sess, &listOptions)
|
||||
|
||||
users := make([]*User, 0, listOptions.PageSize)
|
||||
return users, sess.Find(&users)
|
||||
|
@ -354,7 +354,7 @@ func (u *User) GetFollowing(listOptions ListOptions) ([]*User, error) {
|
|||
Join("LEFT", "follow", "`user`.id=follow.follow_id")
|
||||
|
||||
if listOptions.Page != 0 {
|
||||
sess = listOptions.setSessionPagination(sess)
|
||||
sess = setSessionPagination(sess, &listOptions)
|
||||
|
||||
users := make([]*User, 0, listOptions.PageSize)
|
||||
return users, sess.Find(&users)
|
||||
|
@ -1670,7 +1670,7 @@ func SearchUsers(opts *SearchUserOptions) (users []*User, _ int64, _ error) {
|
|||
|
||||
sess := x.Where(cond).OrderBy(opts.OrderBy.String())
|
||||
if opts.Page != 0 {
|
||||
sess = opts.setSessionPagination(sess)
|
||||
sess = setSessionPagination(sess, opts)
|
||||
}
|
||||
|
||||
users = make([]*User, 0, opts.PageSize)
|
||||
|
@ -1686,7 +1686,7 @@ func GetStarredRepos(userID int64, private bool, listOptions ListOptions) ([]*Re
|
|||
}
|
||||
|
||||
if listOptions.Page != 0 {
|
||||
sess = listOptions.setSessionPagination(sess)
|
||||
sess = setSessionPagination(sess, &listOptions)
|
||||
|
||||
repos := make([]*Repository, 0, listOptions.PageSize)
|
||||
return repos, sess.Find(&repos)
|
||||
|
@ -1706,7 +1706,7 @@ func GetWatchedRepos(userID int64, private bool, listOptions ListOptions) ([]*Re
|
|||
}
|
||||
|
||||
if listOptions.Page != 0 {
|
||||
sess = listOptions.setSessionPagination(sess)
|
||||
sess = setSessionPagination(sess, &listOptions)
|
||||
|
||||
repos := make([]*Repository, 0, listOptions.PageSize)
|
||||
total, err := sess.FindAndCount(&repos)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue