Django querySet 详解

django我们进行查询某一列的值时使用的时values或values_list

相当于select '列名' from table

对于values 返回的是一个querySet,是数组字典

<QuerySet [{'name': 'My blog', 'entry__headline': 'An entry'},
     {'name': 'My blog', 'entry__headline': 'Another entry'}, ...]>

对于values_list 返回的是一个数组元组

<QuerySet [(1, 'first entry'), ...]>

获取所有的值可以拉平

>>> Entry.objects.values_list('id').order_by('id')
<QuerySet[(1,), (2,), (3,), ...]>

>>> Entry.objects.values_list('id', flat=True).order_by('id')
<QuerySet [1, 2, 3, ...]>

对于values 则不行

参见官网:https://docs.djangoproject.com/en/2.1/ref/models/querysets/#django.db.models.query.QuerySet.values

文章目录