色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

django json 分頁

吉茹定2年前7瀏覽0評論

在Django中,我們經常需要將數據分頁展示,而json分頁就是其中一個常用的方式。接下來,我們就來介紹一下如何使用Django實現json分頁。

# views.py
from django.core.paginator import Paginator
from django.http import JsonResponse
def my_view(request):
data = [{'name': 'Tom', 'age': 20}, {'name': 'Jerry', 'age': 22}, {'name': 'Peter', 'age': 24},
{'name': 'Sarah', 'age': 26}, {'name': 'David', 'age': 28}, {'name': 'Linda', 'age': 30}]
page = request.GET.get('page', 1)
page_size = request.GET.get('page_size', 2)
paginator = Paginator(data, page_size)
current_page = paginator.get_page(page)
result = {
'count': paginator.count,
'num_pages': paginator.num_pages,
'has_previous': current_page.has_previous(),
'has_next': current_page.has_next(),
'previous_page_number': current_page.previous_page_number(),
'next_page_number': current_page.next_page_number(),
'data': current_page.object_list,
}
return JsonResponse(result)

上面的代碼中,我們首先定義了一個data列表,它存儲了一些數據。接著,我們根據請求參數page和page_size,創建了一個Paginator對象,并獲取了當前頁的數據。最后,我們將獲取的數據以json數據格式返回給前端。

接下來,我們就可以通過以下方式訪問我們的分頁接口了:

/my_view?page=1&page_size=2

上面的請求將返回第一頁,每頁2條記錄的數據。如果需要獲取第二頁,只需要將請求參數中page改為2即可。

總的來說,使用Django實現json分頁非常簡單,只需要使用Paginator即可。當然,如果需要更加細粒度的控制,可以參考Django官方文檔中有關Paginator的內容。