I have declared a django_filters.FilterSet with a Meta class where I would like to use filter_overrides in order to customise some of the filters. I am using code very similar to the example in the official documentation:
class AccommodationFilter(django_filters.FilterSet):
class Meta:
model = AccommodationOffer
fields = ['numberOfPeople', 'petsAllowed', 'typeOfResidence', 'startDateAccommodation' ]
filter_overrides = {
models.BooleanField: {
'filter_class': django_filters.BooleanFilter,
'extra': lambda f: {
'widget': forms.CheckboxInput(attrs={'class':'form-control', 'value' : 'true'}),
},
},
models.CharField: {
'filter_class': django_filters.ChoiceFilter,
'extra': lambda f: {
'widget': forms.Select(attrs={'class':'form-control'}),
},
},
}
The BooleanFields are showing up as expected, however no matter what I try, the CharFields (which have choices set) do not render with the class="form-control" attribute.