Compare commits
3 Commits
Author | SHA1 | Date |
---|---|---|
|
8cfb5d7869 | |
|
c4d37d1da8 | |
|
39ef3fa9e5 |
|
@ -14,7 +14,11 @@ func GetTotalPages(database *gorm.DB, paginationLimit int, any interface{}, wher
|
|||
if whereQuery == nil {
|
||||
database.Model(any).
|
||||
Count(&totalPages)
|
||||
} else {
|
||||
} else if len(args) == 0 { // here used with db.Where(&User{Name: "jinzhu", Age: 20}).First(&user)
|
||||
database.Model(any).
|
||||
Where(whereQuery).
|
||||
Count(&totalPages)
|
||||
} else { // here used with "name = ?", "jinzhu"
|
||||
database.Model(any).
|
||||
Where(whereQuery, args).
|
||||
Count(&totalPages)
|
||||
|
@ -36,16 +40,25 @@ type PageQuery struct {
|
|||
}
|
||||
|
||||
func DbPageQuery(database *gorm.DB, query PageQuery, paginationLimit int, result any, orderBy string, whereQuery interface{}, args ...interface{}) *gorm.DB {
|
||||
if whereQuery == nil {
|
||||
return database.Limit(paginationLimit).
|
||||
Offset(GetPageOffset(query.Page, paginationLimit)).
|
||||
Where(whereQuery, args).
|
||||
Order(orderBy).
|
||||
Find(result)
|
||||
}
|
||||
|
||||
func DbPageQueryWithoutWhere(database *gorm.DB, query PageQuery, paginationLimit int, result any, orderBy string) *gorm.DB {
|
||||
if len(args) == 0 { // here used with db.Where(&User{Name: "jinzhu", Age: 20}).First(&user)
|
||||
return database.Limit(paginationLimit).
|
||||
Offset(GetPageOffset(query.Page, paginationLimit)).
|
||||
Where(whereQuery).
|
||||
Order(orderBy).
|
||||
Find(result)
|
||||
}
|
||||
|
||||
// here used with "name = ?", "jinzhu"
|
||||
return database.Limit(paginationLimit).
|
||||
Offset(GetPageOffset(query.Page, paginationLimit)).
|
||||
Where(whereQuery, args).
|
||||
Order(orderBy).
|
||||
Find(result)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue