分页管理由 gpage
模块实现, gpage
提供了强大的动态分页及静态分页功能,并且为开发者自定义分页样式提供了极高的灵活度。
使用方式:
import "github.com/gogf/gf/util/gpage"
接口文档:
https://godoc.org/github.com/gogf/gf/util/gpage
分页对象:
// Page is the pagination implementer.
// All the attributes are public, you can change them when necessary.
type Page struct {
TotalSize int // Total size.
TotalPage int // Total page, which is automatically calculated.
CurrentPage int // Current page number >= 1.
UrlTemplate string // Custom url template for page url producing.
LinkStyle string // CSS style name for HTML link tag <a>.
SpanStyle string // CSS style name for HTML span tag <span>, which is used for first, current and last page tag.
SelectStyle string // CSS style name for HTML select tag <select>.
NextPageTag string // Tag name for next p.
PrevPageTag string // Tag name for prev p.
FirstPageTag string // Tag name for first p.
LastPageTag string // Tag name for last p.
PrevBarTag string // Tag string for prev bar.
NextBarTag string // Tag string for next bar.
PageBarNum int // Page bar number for displaying.
AjaxActionName string // Ajax function name. Ajax is enabled if this attribute is not empty.
}
创建分页对象
由于分页对象往往是在 Web
服务中使用,因此从框架 v1.12
版本开始,我们提供更加便捷的分页对象创建方式,分页对象集成到了 ghttp.Request
对象上,可以非常方便地通过 Request.GetPage
方法获取分页对象。该方法定义如下:
func (r *Request) GetPage(totalSize, pageSize int) *gpage.Page