Django帮助 - 如何从外键获取数据

时间:2012-11-12 17:30:32

标签: python django

鉴于以下模型设置(剥离):

class Object(models.Model):
    name = models.CharField(max_length=255)

class ObjectVersion(models.Model):   
    Cabinet = models.ForeignKey(Object)

假设我有一堆ObjectVersion条目,我过滤了名为“filteredObjects”的条目。如何将这些对象的名称放入向量中?

3 个答案:

答案 0 :(得分:0)

所以你说你有一个名为filteredObjects的列表?

objNames = [fo.name for fo in filteredObjects]

答案 1 :(得分:0)

您可以使用values_listvalues。这些文档可以在Django QuerySet API参考here上找到。

>>> ObjectVersion.objects.filter(...).values('Cabinet__name')
[{'Cabinet__name':'foo'}, {'Cabinet__name':'foo2'}, ...]

>>> ObjectVersion.objects.filter(...).values_list('Cabinet__name')
[('foo',), ('foo2',), ...]

答案 2 :(得分:0)

result = ObjectVersion.objects.filter(your filters here).values_list('Cabinet__name', flat=True)

输出:

  result = ['ver_1', 'ver_2'..]