Django, хороший способ запроса отличной модели - PullRequest
2 голосов
/ 22 января 2010

Предположим, у меня есть такая модель:

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?

Ответы [ 2 ]

6 голосов
/ 22 января 2010

В ответ на ваш следующий вопрос к Till, более простой способ:

Foo.objects.values_list('name', flat=True).distinct().order_by('name')
2 голосов
/ 22 января 2010
Foo.objects.values('name').distinct().order_by('name')
...