2

假设我有一个这样的模型:

class Foo(models.Model):
    name = models.CharField("ad",max_length=25)
    type = models.ForeignKey(Type)

因此,在数据库中,我有 Foo 具有相同名称字段但类型不同的对象,即:

name type
A     1
A     2
B     1
C     2
A     3
B     3

我将使用这些信息来生成一个 html 选择表单,显示所有可能的(不同的)名称,所以最后我的选择表单将显示如下:

<select>
  <option value="A">A</option>
  <option value="B">B</option>
  <option value="C">C</option>
</select>

如何获得不同值的列表name

4

2 回答 2

6

在回答您对 Till 的后续问题时,一种更简单的方法是:

Foo.objects.values_list('name', flat=True).distinct().order_by('name')
于 2010-01-22T09:57:47.617 回答
2
Foo.objects.values('name').distinct().order_by('name')
于 2010-01-22T09:17:15.287 回答