Are you sure you want to delete this task? Once this task is deleted, it cannot be recovered.
|
8 years ago | |
---|---|---|
.. | ||
LICENSE | 8 years ago | |
README.md | 8 years ago | |
paginater.go | 8 years ago |
Package paginater is a helper module for custom pagination calculation.
go get github.com/Unknwon/paginater
The following code shows an example of how to use paginater:
package main
import "github.com/Unknwon/paginater"
func main() {
// Arguments:
// - Total number of rows
// - Number of rows in one page
// - Current page number
// - Number of page links
p := paginater.New(45, 10, 3, 3)
// Then use p as a template object named "Page" in "demo.html"
// ...
}
demo.html
{{if not .Page.IsFirst}}[First](1){{end}}
{{if .Page.HasPrevious}}[Previous]({{.Page.Previous}}){{end}}
{{range .Page.Pages}}
{{if eq .Num -1}}
...
{{else}}
{{.Num}}{{if .IsCurrent}}(current){{end}}
{{end}}
{{end}}
{{if .Page.HasNext}}[Next]({{.Page.Next}}){{end}}
{{if not .Page.IsLast}}[Last]({{.Page.TotalPages}}){{end}}
Possible output:
[First](1) [Previous](2) ... 2 3(current) 4 ... [Next](4) [Last](5)
As you may guess, if the Page
value is -1
, you should print ...
in the HTML as common practice.
This project is under Apache v2 License. See the LICENSE file for the full license text.
No Description
Go SVG JavaScript Vue Roff other