model一般都是有多个属性的,但是很多时候我们又只需要查询特定的某一个,这个时候可以用到values和values_list 利用values查询 fromattendence.modelsimportEmployeefromattendence.modelsimportEmployeeIP#获取一个字段ipList = EmployeeIP.objects.values("IP").first()print(type(ipList))#<class 'dict'>print(ipList)...
通过QuerySet 会返回model的所有字段,通过obj.field_name 即可获取对应字段的数据 values() :获取某一个或者某几个字段的数据 指定字段 使用values() 指定参数可以仅仅返回相应字段的字典列表,如: name_dict_list = Project.objects.values('name') 则name_dict_list = <QuerySet [ {'name': 'tets1'}, { ...
values_list() distinct() using() 1、reverse() 对QuerySet 返回的结果进行反转,使用方法如下: from blog.models import Blog Blog.objects.filter(id__gte=2).reverse() 通过reverse() 方法,可以使原本是某个顺序的数据顺序倒转返回。 2、values() 如果不使用 values() 方法,QuerySet 会返回 model 的所有...
在Django中,可以使用values_list方法来获取查询集。values_list方法返回一个元组列表,每个元组包含指定字段的值。 使用values_list方法的语法如下: 代码语言:txt 复制 queryset.values_list(*fields, flat=False) 参数说明: fields:可选参数,指定要返回的字段。如果不指定,则返回所有字段的值。
>>>name_dict_list[0]{'name':'python3'}>>>name_dict_list[0].get('name')'python3' 1. 2. 3. 4. 5. 不指定字段 如果我们使用的时候不指定 values() 函数的参数,返回的则是该 model 所有字段的字典列表,比如说 Blog 这个 model 的字段为 id、name、tagline 三个,那么返回的是包含所有字段的字...
当通过values_list循环取值的时候,如下: ret = models.UserType.objects.all().values_list(‘nid‘) print(type(ret), ret) 1. 2. 查询结果: <class ‘django.db.models.query.QuerySet‘> <QuerySet [(1,), (2,), (3,)]> 1. 依然是queryset,但是结果就是列表中包含的元组,values和values_list...
# primary_key#主键是只读形式的,不能改变,只能增加fromdjango.dbimportmodelsclassFruit(models.Model):name=models.CharField(max_length=100,primary_key=True)>>>fruit=Fruit.objects.create(name='Apple')>>>fruit.name='Pear'>>>fruit.save()>>>Fruit.objects.values_list('name',flat=True)<QuerySet[...
问Django:理解.values()和.values_list()用例ENvalues()和values_list()都是作为特定用例的优化:检索...
values 或者 values_list 放在annotate后面:annotate 表示直接以当前表的pk执行分组,values 或者 values_list 表示查询哪些字段, 并且要将 annotate 里的聚合函数起别名,在 values 或者 values_list 里写其别名。 准备数据和创建模型 models.py classEmp(models.Model): ...
from django.db.models import Countevents_this_month = Event.objects.values('created_by', 'kind'...