我有一个数据库,其中包含多个包含一些信息的字段的记录.
要使表中的所有数据与某个过滤器匹配,我会这样做:
records = Record.objects.filter(fieldA='a')
Run Code Online (Sandbox Code Playgroud)
我想,记录是一个QuerySet对象,包含一个记录的"列表".那是对的吗?
现在让我们说我想在一个字段中列出值.
如果我这样做:
records = Record.objects.filter(fieldA='a').only('fieldB')
Run Code Online (Sandbox Code Playgroud)
我仍然得到一个查询集,但现在它有一些延迟字段.我想要的只是我想要抓住又名字段B的值的列表.我还希望能够获取fieldB的不同值.我想我可以迭代每条记录,拉出fieldB,如果它已经存在就把它添加到列表中,就在那里,但是必须有更好的方法.
谢谢!
编辑:我认为我正在寻找的是
Record.objects.values_list('fieldB')
Run Code Online (Sandbox Code Playgroud)
JPC*_*JPC 11
是的,找到了. http://docs.djangoproject.com/en/dev/ref/models/querysets/ 这是参考
我在这里发布詹姆斯的评论,以使其更加突出。肯定是我要找的东西。
我想要一个值列表。使用该QuerySet方法.list_values()返回一个元组列表。要获取值列表,我需要使用option flat=True。
Record.objects.values_list('fieldB', flat=True)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18665 次 |
| 最近记录: |