本文介紹djanog兩種分頁,第一是普通分頁,第二是使用haystack全文檢索的分頁。
1.django自帶分頁功能,這個功能非常好用。
基本知識點:
django提供了資料分頁的類,這些類被定義在django/core/paginator.py中
物件paginator用於對列進行一頁n條資料的分頁運算
物件page用於表示第m頁的資料
paginator物件
方法init(列表,int):返回分頁物件,引數為列表資料,每面資料的條數
屬性count:返回物件總數
屬性num_pages:返回頁面總數
屬性page_range:返回頁碼列表,從1開始,例如[1, 2, 3, 4]
方法page(m):返回page物件,表示第m頁的資料,下標以1開始
page物件
from django.core.paginator import paginator
from .models import *
def index(request):
index= int(request.get.get('index','1'))
blog = post.objects.filter(published_date__isnull=false).order_by('-published_date')
page = paginator(blog,1) #對搜尋出來的結果進行分頁,一頁顯示一條
blog = page.page(index) #獲取第index 頁的資料,這個需要前端使用者點選時傳過來
context =
return render(request,'blog/index.html',context)
}全文檢索中的分頁:
django 和haystack 版本:
django (1.8.7)
django-haystack (2.6.1)
注意:這裡指的是已經實現全文檢索功能後的分頁操作:
在專案目錄中配置: 這個配置指的是搜尋頁一頁多少條資料
haystack_search_results_per_page = 10
seach.html 裡的配置
備註:query 搜尋關鍵字,自動傳到模板
page_obj 分頁後的資料,haystack 自動傳到模板
其他方法跟上面的普通頁面分頁一樣使用。}}
Django快速分頁
分頁在web開發中,對大量的商品進行分頁顯示,是常見的需求,django對分頁直接提供了現成的函式,讓我們的開發更為快速便捷.django快速分頁 from django.shortcuts import render from models import showmycomputer 引入方法 f...
Django快速分頁
分頁 在web開發中,對大量的商品進行分頁顯示,是常見的需求,django對分頁直接提供了現成的函式,讓我們的開發更為快速便捷.django快速分頁 from django.shortcuts import render from models import showmycomputer 引入方法 ...
Django學習系列之django分頁
from django.core.paginator import paginator objects post.objects.filter status published 從資料庫中取出所有status published狀態的文章p paginator objects,3 例項化pagina...