[英]In Django, does `queryset is None` evaluates the queryset?
在以下情況下是否評估Django queryset
? 如果沒有 ,那為什么呢?
if queryset is None:
pass
from django.db.models.query import QuerySet
if isinstance(queryset, QuerySet):
pass
是因為在這兩種情況下python都執行對象引用比較,但這不會導致查詢嗎?
如前所述 ,當您嘗試訪問查詢集的值時,將對查詢集進行評估-通過對其進行迭代(直接或間接),訂閱/切片,打印(實際上:在其上調用repr()
)或測試其真值。
is
身份運算符,它比較對象標識符,因此不評估查詢集。
isinstance
檢查對象的類(和mro類),因此也不評估查詢集。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.