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