python 分頁操作

2021-09-28 22:31:54 字數 2547 閱讀 8542

#最近做了乙個前後端分離的分頁操作

#有兩種操作方式

#第一種為基於外掛程式的分頁

paginate(page, per_page, error_out=true)

page 當前頁數

per_page 每頁顯示的條數

error_out 是否列印錯誤資訊

paginate.iter_pages() 所有頁碼

返回列表 如[1, 2, 3, 4]

paginate(page, per_page,error_out).items

返回當前頁的所有資料

@stu.route('/stupage/')

def stu_page():

page = int(request.args.get('page', 1))

per_page = int(request.args.get('per_page', 2))

paginate = student.query.order_by('-s_id').paginate(page, per_page, error_out=false)

stus = paginate.items

return render_template('stupage.html', paginate=paginate, stus=stus)

#第二種為手寫的分頁操作

@menus.route('/get2', methods=['get'])

#@login_required

def get2():

if request.method == 'get':

try:

params = request.args or request.get_json() or request.form

page = params.get('page', type=int, default=1) # 獲取頁碼,預設第一頁

per_page = params.get('per_page', type=int, default=2) # 每頁顯示條數

name = menus.query.order_by("id").all()

count = len(name)

start = (page - 1) * per_page

end = start + per_page

l =

for i in range(count):

data = {}

menu_id = name[i].id

data["id"] = name[i].id

data["name"] = name[i].menu_name

data["menu_status"] = name[i].menu_status

data["type"] = name[i].menu_type

data["code"] = name[i].menu_code

data["icon"] = name[i].menu_icon

data["url"] = name[i].menu_url

name2 = submenus.query.filter_by(menu_id=menu_id).order_by("id").all()

count2 = len(name2)

l3 =

for ii in range(count2):

data2 = {}

data2["id"] = name2[ii].id

data2["name"] = name2[ii].submenu_name

data2["type"] = name2[ii].submenu_type

data2["menu_id"] = name2[ii].menu_id

data2["submenu_status"] = name2[ii].submenu_status

data2["url"] = name2[ii].submenu_url

data2["icon"] = name2[ii].submenu_icon

data2["code"] = name2[ii].submenu_code

data2["children"] = l3

total_count = len(l)

a = total_count / per_page

total_pages = math.ceil(a)

current_page=page

l1 = l[start:end] # 對資料經行取值

data =

return json.dumps(data, ensure_ascii=false)

except exception as e:

print("e",e)

db.session.rollback()

data =

return json.dumps(data)

finally:

db.session.close()

Oracle 分頁操作

oracle的分頁查詢 問題 當乙個表中的資料量特別大的時候,如果一次性全部顯示給使用者,則造成頁面過於龐大,體驗極差。解決 使用分頁查詢 使用 rownum關鍵字 oracle對外提供的自動給查詢結果編號的關鍵字,與每行的資料沒有關係。注意 rownum關鍵字只能做 的判斷,不能進行 的判斷 se...

rdlc 分頁操作和分頁統計

1.工具箱中拖乙個列表過來,設定 列表 行組 組屬性 常規 組表示式 int rownumber nothing 1 10 分頁符 勾選在組的結尾。2.工具箱中拖乙個表,放在列表中,然後可以對錶進行隨意設計,表中分組就會自動按照10條一頁進行分頁,標題也會在新頁中被重複列印了。3.公式 sum fi...

python分頁查詢 分頁查詢

分頁 使用select查詢時,如果結果集資料量很大,比如幾萬行資料,放在乙個頁面顯示的話資料量太大,不如分頁顯示,每次顯示100條。要實現分頁功能,實際上就是從結果集中顯示第1 100條記錄作為第1頁,顯示第101 200條記錄作為第2頁,以此類推。因此,分頁實際上就是從結果集中 擷取 出第m n條...