Django запрос на выборку элементов, возвращающий '---------'
Я пытаюсь заполнить элемент select набором queryset из django. Все работает нормально, но в начале списка выпадающего меню элемента select у меня всегда есть '---------' в качестве первого варианта.
forms.py
class forms_bdc(forms.ModelForm):
[...]
bdc_description_1 = forms.ModelChoiceField(queryset=models_products.objects.values_list('product_denomination', flat=True),required=False, widget=forms.Select(attrs={'id': 'editable-select-2'}))
В базе данных "product_denomination" содержится только 2 строки, но у меня всегда есть этот '---------' на первом варианте.
Что я упускаю?
Место '---------', которое появляется в качестве первой опции в вашем ModelChoiceField, - это пустая опция по умолчанию, которую Django добавляет для необязательных полей. Чтобы удалить эту опцию, вы можете установить атрибут empty_label в None.
Вот как можно изменить файл forms.py:
class forms_bdc(forms.ModelForm):
[...]
bdc_description_1 = forms.ModelChoiceField(
queryset=models_products.objects.values_list('product_denomination', flat=True),
required=False,
widget=forms.Select(attrs={'id': 'editable-select-2'}),
empty_label=None # This removes the '---------' option
)