Django get() 是否在 values() 上对数据库执行查询?
Does Django get() performs query to database on values()?
我有值查询集,如果我从中得到一些日期,这会执行对数据库的调用吗?
instances_values = Model.objects.filter(**kwargs).values(*args)
instance_with_id_one = instances_values.get(id=1) # does this perform a call to the databse?
是,一个.get(..)
是渴望。它执行查询。您的 instance_with_id_one
是一个字典,其中包含您的 values(..)
调用中列出的值。
您可以使用 .filter(..)
来推迟通话。然后它只会在您 使用 查询集时调用(例如通过遍历它)。但它因此是一组(在本例中最多一个)记录。
我有值查询集,如果我从中得到一些日期,这会执行对数据库的调用吗?
instances_values = Model.objects.filter(**kwargs).values(*args)
instance_with_id_one = instances_values.get(id=1) # does this perform a call to the databse?
是,一个.get(..)
是渴望。它执行查询。您的 instance_with_id_one
是一个字典,其中包含您的 values(..)
调用中列出的值。
您可以使用 .filter(..)
来推迟通话。然后它只会在您 使用 查询集时调用(例如通过遍历它)。但它因此是一组(在本例中最多一个)记录。