亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python flask實現分頁的示例代碼

發布時間:2020-10-20 15:53:23 來源:腳本之家 閱讀:306 作者:徐代龍 欄目:開發技術

結合mysql數據庫查詢,實現分頁效果

@user.route("/user_list",methods=['POST','GET'])
def user_list():
  p = g.args.get("p", '') #頁數
  show_shouye_status = 0 #顯示首頁狀態

  if p =='':
    p=1
  else:
    p=int(p)
    if p > 1:
      show_shouye_status = 1

  mdb = db_session()
  limit_start = (int(p)-1)*10#起始

  sql ="select * from page_text limit {0},10".format(limit_start)
  user_list=mdb.getMany(sql)

  sql="select count(id) as total from page_text"
  count = mdb.getOne(sql)['total'] #總記錄
  total = int(math.ceil(count/10.0)) #總頁數

  dic = get_page(total,p)
  datas={
    'user_list':user_list,
    'p': int(p),
    'total': total,
    'show_shouye_status': show_shouye_status,
    'dic_list': dic

  }
  return render_template("user_list.html",datas=datas)

其中get_page為封裝的方法:

def get_page(total,p):
  show_page = 5  # 顯示的頁碼數
  pageoffset = 2 # 偏移量
  start = 1  #分頁條開始
  end = total #分頁條結束

  if total > show_page:
    if p > pageoffset:
      start = p - pageoffset
      if total > p + pageoffset:
        end = p + pageoffset
      else:
        end = total
    else:
      start = 1
      if total > show_page:
        end = show_page
      else:
        end = total
    if p + pageoffset > total:
      start = start - (p + pageoffset - end)
  #用于模版中循環
  dic = range(start, end + 1)
  return dic

如果這里需要進行前端模板的拼接的話,可以需要以下代碼(bootstrap)

<ul class="pagination">
    {% if datas.show_shouye_status==1%}
      <li class=''><a href='/user/user_list?p=1'>首頁</a></li>
      <li class=''><a href='/user/user_list?p={{datas.p-1}}'>上一頁</a></li>
   {%endif%}

    {% for dic in datas.dic_list %}
      {% if dic==datas.p%}
       <li class="active"><a href="/user/user_list?p={{dic}}" rel="external nofollow" rel="external nofollow" >{{dic}}</a></li>
      {%else%}
        <li><a href="/user/user_list?p={{dic}}" rel="external nofollow" rel="external nofollow" >{{dic}}</a></li>
      {%endif%}
    {%endfor%}

    {% if datas.p < datas.total%}
      <li class=''><a href='/user/user_list?p={{datas.p+1}}'>下一頁</a></li>
      <li class=''><a href='/user/user_list?p={{datas.total}}'>尾頁</a></li>
    {%endif%}
      共{{datas.total}}頁
 </ul>

bootstrap樣式 http://edu.jb51.net/bootstrap/bootstrap-pagination.html

如果是返回給APP端的話,直接返回data數據就可以了。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

平舆县| 青海省| 太保市| 玛沁县| 咸阳市| 凤凰县| 北安市| 福贡县| 民县| 巴青县| 山东省| 长顺县| 肇州县| 琼海市| 博湖县| 瑞昌市| 光山县| 共和县| 石家庄市| 沂源县| 偃师市| 平度市| 连州市| 益阳市| 遂平县| 会昌县| 丰台区| 娱乐| 札达县| 南宁市| 宜兴市| 垦利县| 五大连池市| 中卫市| 柳江县| 定襄县| 定兴县| 阳江市| 临潭县| 南京市| 郧西县|