给定以下模型设置(精简):
class Object(models.Model):
name = models.CharField(max_length=255)
class ObjectVersion(models.Model):
Cabinet = models.ForeignKey(Object)
假设我有一堆ObjectVersion
我过滤的条目,称为“filteredObjects”。我如何将这些对象的名称放入向量中?
所以你是说你有一个名为的列表filteredObjects
?
objNames = [fo.name for fo in filteredObjects]
您可以使用values_list
或values
。这些文档可在此处的 Django QuerySet API 参考中找到。
>>> ObjectVersion.objects.filter(...).values('Cabinet__name')
[{'Cabinet__name':'foo'}, {'Cabinet__name':'foo2'}, ...]
或者
>>> ObjectVersion.objects.filter(...).values_list('Cabinet__name')
[('foo',), ('foo2',), ...]
result = ObjectVersion.objects.filter(your filters here).values_list('Cabinet__name', flat=True)
输出:
result = ['ver_1', 'ver_2'..]