【发布时间】:2019-10-15 09:33:38
【问题描述】:
Django 查询集是惰性的
person_set = Person.objects.all()
在文档中它说上面的代码没有运行任何数据库查询。 但是使用上面的命令它会在这种情况下生成一个查询集 person_set 并且这个对象包含所有的人员对象。
person_set = Person.objects.all()
print(person_set)
这是输出。
<QuerySet [<Person: Person object (7)>, <Person: Person object (8)>, <Person: Person object (9)>]>
如果它没有命中数据库,那么它如何知道数据库中有哪些记录?因为它应该只在使用循环或其他方法评估时运行查询。
【问题讨论】:
标签: django database django-queryset