Django - 从模型中的所有对象中获取第一个属性
Posted
技术标签:
【中文标题】Django - 从模型中的所有对象中获取第一个属性【英文标题】:Django - Get the first attribute from all objects in a Model 【发布时间】:2014-05-13 20:49:31 【问题描述】:我正在尝试从模型中的所有对象中获取一个属性的内容列表。
目前,我正在这样做:
titles_list = []
for item in A.objects.all():
titles_list.append(item.title)
print titles_list
有没有更有趣的基于内存/时间经济的解决方案?
【问题讨论】:
【参考方案1】:同样可以使用values_list()和flat=True
在一行中实现:
print A.objects.values_list('title', flat=True)
【讨论】:
+1 。顺便说一句,这将返回ValuesListQuerySet
对象,这在大多数情况下都很好。但是如果你需要一个 python 对象列表,只需将其转换为列表类型list()
。另外,.all()
在这里是多余的。
编辑删除了多余的all()
谢谢,太完美了!以上是关于Django - 从模型中的所有对象中获取第一个属性的主要内容,如果未能解决你的问题,请参考以下文章
从 Django QuerySet 中获取所有相关的多对多对象
如何从中间件中的 Django 请求对象获取视图中使用的模型名称?
Django ORM:如何根据所有记录中的列获取唯一记录(需要模型对象而不是特定值对象)