新聞中心
靜態(tài)分頁是指頁面的分頁參數(shù)使用的是路由傳參,這種場景下分頁對象與?Server?的路由定義耦合性比較大。路由定義中需要給定一個?page?名稱的路由參數(shù),可以使用模糊匹配路由?*page?,也可以使用命名匹配路由?:page?,也可以使用字段匹配路由?{page}?。

創(chuàng)新互聯(lián)公司是專業(yè)的安居網(wǎng)站建設(shè)公司,安居接單;提供成都網(wǎng)站制作、網(wǎng)站設(shè)計、外貿(mào)網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行安居網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
示例1,使用模糊匹配路由
package main
import (
"github.com/GOgf/gf/v2/frame/g"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gview"
)
func main() {
s := g.Server()
s.BindHandler("/page/static/*page", func(r *ghttp.Request) {
page := r.GetPage(100, 10)
buffer, _ := gview.ParseContent(`
{{.page1}}
{{.page2}}
{{.page3}}
{{.page4}}
`, g.Map{
"page1": page.GetContent(1),
"page2": page.GetContent(2),
"page3": page.GetContent(3),
"page4": page.GetContent(4),
})
r.Response.Write(buffer)
})
s.SetPort(8199)
s.Run()
}
執(zhí)行后,我們手動訪問 http://127.0.0.1:8199/page/static/6 頁面的結(jié)果如下:
示例2,使用字段匹配路由
package main
import (
"github.com/gogf/gf/v2/frame/g"
"github.com/gogf/gf/v2/net/ghttp"
"github.com/gogf/gf/v2/os/gview"
)
func main() {
s := g.Server()
s.BindHandler("/:obj/*action/{page}.html", func(r *ghttp.Request) {
page := r.GetPage(100, 10)
buffer, _ := gview.ParseContent(`
{{.page1}}
{{.page2}}
{{.page3}}
{{.page4}}
`, g.Map{
"page1": page.GetContent(1),
"page2": page.GetContent(2),
"page3": page.GetContent(3),
"page4": page.GetContent(4),
})
r.Response.Write(buffer)
})
s.SetPort(8199)
s.Run()
}
該示例的路由規(guī)則更加靈活,其中使用了?{page}?字段匹配規(guī)則,用于獲取當(dāng)前的分頁頁碼信息。執(zhí)行后,我們按照路由規(guī)則隨意訪問一個?URL?如: http://127.0.0.1:8199/order/list/6.html ,結(jié)果如下圖所示:
網(wǎng)站名稱:創(chuàng)新互聯(lián)GoFrame教程:GoFrame分頁管理-靜態(tài)分頁
標(biāo)題路徑:http://m.fisionsoft.com.cn/article/djoepps.html


咨詢
建站咨詢
