第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang Revel:對結(jié)構(gòu)數(shù)組進行分頁

Golang Revel:對結(jié)構(gòu)數(shù)組進行分頁

Go
達令說 2021-12-06 19:31:56
我有一個結(jié)構(gòu)數(shù)組,我需要在視圖端進行分頁。這是我的代碼在視圖中的樣子:<div class="tab-content">        <div class="tab-pane active" id="tab1" >          <hr/>          {{range .c}}                            <p>Number: {{.Number}}</p>            <p>Name: {{.Name}}</p>            <p>Parties: {{.A}} and {{.B}}</p>            <p>Location: {{.Location}}</p>          <a href="/search">Read More</a>          <hr/>          {{end}}          <div class="paging">            <ul class="pagination">              <li><a href="#"><i class="fa fa-angle-left"></i></a></li>              <li class="active"><a href="#">1</a></li>              <li><a href="#">2</a></li>              <li><a href="#">3</a></li>              <li><a href="#">4</a></li>              <li><a href="#">5</a></li>              <li><a href="#"><i class="fa fa-angle-right"></i></a></li>            </ul>          </div>        </div>我試圖尋找解決方案來分頁,因為結(jié)果有數(shù)百個。到目前為止,我遇到的唯一 golang 解決方案與 SQL 相關(guān)。我非常感謝結(jié)構(gòu)數(shù)組的解決方案。先感謝您。編輯我的后端存儲是 BoltDB。我通過調(diào)用此方法獲取控制器上的數(shù)據(jù)func List(bucket string)  []Data{    //Open BoltDB database    Open()    defer Close()    //Use a predefined struct to make an array    d:=make([]Data, 0)    //Fetch and unmarshal data as it is saved in byte form    db.View(func(tx *bolt.Tx) error {        cur := tx.Bucket([]byte(bucket)).Cursor()        for k, v := cur.First(); k != nil; k, v = cur.Next() {                        d1:=Data{}            err:= json.Unmarshal(v, &d1)            if err !=nil{                return err            }            d=append(d, d1)        }         return nil      })    //Return the array of data    return d}這個數(shù)組是我想在視圖上迭代的。
查看完整描述

1 回答

?
慕婉清6462132

TA貢獻1804條經(jīng)驗 獲得超2個贊

您可以收集從 list 函數(shù)返回的完整數(shù)據(jù)數(shù)組。


func paginate(x []Data, skip int, size int) []int {

limit := func() int {

    if skip+size > len(x) {

        return len(x)

    } else {

        return skip + size

    }


}


start := func() int {

    if skip > len(x) {

        return len(x)

    } else {

        return skip

    }


}

  return x[start():limit()]

}

雖然你會得到你想要的行為,但這在內(nèi)存方面是非常浪費的,特別是如果你的數(shù)據(jù)數(shù)組很大。希望這可以幫助。


查看完整回答
反對 回復 2021-12-06
  • 1 回答
  • 0 關(guān)注
  • 336 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號