2022-10-01 結果集的含義: 結果集就是在查詢過程中,返回的一個列表的集合。 常見的結果集在一些函數中查詢會返回,具體包括的函數有: filter、exclude、order_by 結果集的兩大特性: (1)惰性 指的是查詢時,如果不用則在mysql日誌中不會有查詢記錄。反之,如果使用(一般 ...
2022-10-01
結果集的含義:
結果集就是在查詢過程中,返回的一個列表的集合。
常見的結果集在一些函數中查詢會返回,具體包括的函數有:
filter、exclude、order_by
結果集的兩大特性:
(1)惰性
指的是查詢時,如果不用則在mysql日誌中不會有查詢記錄。反之,如果使用(一般是輸出)的話,就會在記錄日誌中有記錄。
(2)緩存
當查詢的結果集賦值給一個變數時,在多次使用這個變數時,就會在日誌中存在一個緩存,即最初的結果集只有一個記錄。
例:
from book.models import BookInfo1
books = BookInfo1.objects.all()
使用:
for book in books: print(book)
上述代碼可以放在shell工具中查看。
---------------------------
分頁
分頁的含義:
分頁即把查詢到的結果集分頁進行顯示。
分頁實例:
前提環境:進入pycharm中的終端,進入虛擬環境,進入shell環境(python manage.py shell)
要進行分頁查詢,首先要導入模塊。
from django.core.paginator import Paginator
註:後面導入的“分頁”首字母是需要大寫的。
進行查詢收集
books = BookInfo1.objects.all()
分頁
p = Paginator(books,2)
說明:將收集到的“books”中結果進行分頁。
獲取分頁中的內容
books_page = p.page(1)
進行輸出
page_book