男神鹏:golang gin 实现分页工具函数
作者:互联网
分页是项目的一些关键点,每个语言都有它不同的写法,那么在golang中如何实现呢??
实现技巧:golang一般都把这种在项目常用到的都划分成工具函数,当你想用到的时候,直接调用工具函数就可以达到想要的效果。
实现代码:
package util
import ( "fmt" "github.com/gin-gonic/gin" "strconv" )
// Pagination is page util func Pagination(ctx *gin.Context) (pageStr string, num int, err error) { limit := ctx.DefaultQuery("page_size", "8") pageNumber := ctx.DefaultQuery("page_number", "1") limitInt, err := strconv.Atoi(limit) if err != nil || limitInt < 0 { return "", 0, err } pageNumberInt, err := strconv.Atoi(pageNumber) if err != nil || pageNumberInt < 0 { return "", 0, err } if pageNumberInt != 0 { pageNumberInt-- } offsetInt := limitInt * pageNumberInt pageStr = fmt.Sprintf(" limit %d offset %d", limitInt+1, offsetInt) return pageStr, limitInt, nil } 在用到时 直接调用即可。
标签:pageStr,err,limitInt,golang,gin,pageNumberInt,男神鹏 来源: https://www.cnblogs.com/lyp0626/p/12056143.html