Я хотел бы отображать данные из таблицы в форме Django Queryset с правильным отображением значения и текста раскрывающегося списка.
Кодирование в форме:
self.fields['testing_field'].queryset = model_abc.objects.all().values_list('description', flat=True)
Описание результата также является значением:
<select name = "cars" id = "cars">
<option value = "volvo">Volvo</option>
<option value = "saab">Saab</option>
<option value = "mercedes">Mercedes</option>
<option value = "audi">Audi</option>
</select>
Ожидаемый результат может установить идентификатор как значение с существующим описанием:
<select name = "cars" id = "cars">
<option value = "1">Volvo</option>
<option value = "2">Saab</option>
<option value = "3">Mercedes</option>
<option value = "4">Audi</option>
</select>
Как установить id в качестве значения в раскрывающемся списке Django QuerySet?
Вам нужно получить как описание, так и pk объектов. это достаточно просто:
possibles = model_abc.objects.all().values_list('pk', 'description')
Вы можете преобразовать это в динамический выбор:
choices = ( (x['pk'], x['description']) for x in possibles )
или вы можете перебрать возможные варианты в своем шаблоне
{% for option in possibles %}
<option value = "{{option.pk}}">{{option.description}}</option>
{% endfor %}