كيفية تخصيص <option> الافتراضي في محدد

1

لقد أنشأت النموذج التالي:

class ProductFilter(forms.Form):
    price = forms.IntegerField(label='Price', widget=forms.Select(choices=PRICE_CHOICES), required=False)
    category = forms.ModelChoiceField(queryset=Category.objects.all(), required=False)
    language = forms.ModelChoiceField(queryset=ProductLanguage.objects.all(), required=False)

الافتراضي <option> في كل من الفئة واللغة يتم عرضهما "------------" . أعلم أنه يمكنني أن أضبط initial="..." ، ولكن أود أن يكون الخيار الافتراضي شيئًا ليس جزءًا من مجموعة الاستعلام.

هل يمكن إدراج خيار بطريقة أو بأخرى؟ لا أريد إنشاء لغة أو فئة تسمى "الكل".

1 إجابة

1
افضل جواب

يمكنك تغيير ------------ عن طريق الإعداد empty_label .

category = forms.ModelChoiceField(queryset=Category.objects.all(), required=False, empty_label='(none)')

لاحظ أنه يتم استخدام هذه القيمة عند عدم تحديد أي فئة. سيكون من المربك أن تحدد empty_label="all" .

:مؤلف

أسئلة ذات صلة

فوق
قائمة طعام