Unfortunately, an empty label in SelectDateWidget is only used if the field is not required, but you can simply change this by subclassing SelectDateWidget and overriding the create_select method:
class MySelectDateWidget(SelectDateWidget): def create_select(self, *args, **kwargs): old_state = self.is_required self.is_required = False result = super(MySelectDateWidget, self).create_select(*args, **kwargs) self.is_required = old_state return result
But in this case, you may have to redefine the check of your field as well, so it will cause the error that is required for this field, and not this choice is invalid when the choice remains at an empty value.
source share