Django非同步請求分頁的實現

2021-08-22 14:58:08 字數 1016 閱讀 2019

django的開發文件有乙個自帶的paginator分頁器,可以很方便的在原生的模板中進行呼叫函式分頁;

但是非同步請求不能給模板傳入物件,該怎麼分頁了?

1、就將分頁需要用到的資料從物件中提前取出來,放在字典裡面

2、前台呼叫時候不再從物件中取,而是字典中取,完成分頁樣式; 

#views.py

獲取返回列表res

從請求中獲取分頁面數目per_page

從請求中獲取當前頁面current_page

#對原始結果集進行分頁的處理函式

def paginator(res, per_page, current_page):

p = paginator(res, per_page)

contacts = p.page(current_page)

return

//非同步請求的地方,將收到的json資料,顯示成分頁樣式

function get_pools(current_page) ,

datatype: 'json',

success: function (contacts)

});}//.step-links是html已經存在的div;對裡面加上前一頁,當前頁,總頁數,後一頁

function paginator(contacts)

if(contacts.has_next)

return contacts.objects;

}

#可以同時顯示5個頁的示例

var total = contacts.total_nums;

var current = contacts.current_num;

var start=0,end= 4;

var middle;

if(current<=3)else if(current>=total-1)else

for(var i=0;i<5;i++)else

}}

3 2 2 請求分頁管理方式

請求分頁系統建立在基本分頁系統基礎之上,為了支援虛擬儲存器功能而增加了請求調頁功能和頁面置換功能。請求分頁是目前最常用的一種實現虛擬儲存器的方法。在請求分頁系統中,只要將當前需要的一部分頁面裝入記憶體,便可以啟動作業執行。在作業執行過程中,當所要訪問的頁面不在記憶體時,再通過調頁功能將其調入,同時還...

請求分頁儲存管理方式

請求分頁系統是建立在基本分頁的基礎上的,為了能支援虛擬儲存器功能而增加了請求調頁功能和頁面置換功能。相應地,每次調入和換出的基本單位都是長度固定的頁面,這使得請求分頁系統在實現上要比請求分段系統簡單 請求分段系統在換進和 換出時是 可變長度的段 因此,請求分頁便成為目前最常用的一種實現虛擬儲存器的方...

3 2 2 請求分頁管理方式

請求分頁和基本分頁的區別 當需要的資訊不在記憶體,需要作業系統從外存調入記憶體 當記憶體吃緊的時候,需要將一些暫時用不到的資訊換出到外存 如果頁面沒有被修改過,換出外存的時候就沒有必要重新寫回外存 記憶體塊號 狀態外 是否在記憶體當中 訪問字段 上次訪問的時間 修改位 頁面是否被修改過 外存位址 缺...