本站源代码
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
Tamal Saha 171b359877 Use gitea forked macaron (#7933) 5 lat temu
..
.gitignore Use gitea forked macaron (#7933) 5 lat temu
LICENSE Use gitea forked macaron (#7933) 5 lat temu
README.md Use gitea forked macaron (#7933) 5 lat temu
paginater.go Use gitea forked macaron (#7933) 5 lat temu

README.md

Paginater Build Status

Package paginater is a helper module for custom pagination calculation.

Installation

go get github.com/Unknwon/paginater

Getting Started

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.

Getting Help

License

This project is under Apache v2 License. See the LICENSE file for the full license text.

上海开阖软件有限公司 沪ICP备12045867号-1