2015-05-23 6 views
0

В моей форме Django у меня есть ModelChoiceField для сотрудников, но мне нужен выбор в раскрывающемся списке для всех сотрудников. Какой был бы лучший способ сделать это?Добавление значения в набор запросов в Django

employees = forms.ModelChoiceField(queryset=Employees.objects.all()) 

Первый attemptI попытался

employees = forms.ChoiceField(choices = Employees.objects.values()) 

, но я получаю 'слишком много объектов для распаковки' Ошибка

Благодарности

+0

Вы уверены, что не хотите ModelMultipleChoiceField? – Kenzo

ответ

2

Попробуйте это:

employees = forms.ChoiceField(choices = [(emp['id'], emp['full_name']) 
      for emp in Employees.objects.values('id', 'full_name')]) 

слишком много объектов для распаковки ошибок, возникающих из-за каждую клеточку chioces должна содержит только два значения подобного ниже:

[(1, 'Eric Manson'), (2, 'Julia Rose'), (3, 'Saadi Khorshid'), ...] 

Но Employees.objects.values() распаковки всех полей в словаре формы.

Смежные вопросы