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
    )
Вернуться на верх