**Form:**
{{{
class MyForm(forms.ModelForm):
buggy_field = forms.BooleanField(
widget=forms.RadioSelect(choices=[(True, 'Tak'), (False, 'Nie')]),)
}}}
Buggy place because value is False here:
**django.forms.fields.py+718:**
{{{
def validate(self, value):
if not value and self.required:
raise ValidationError(self.error_messages['required'],
code='required')
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/27353>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
* status: new => closed
* resolution: => invalid
* needs_tests: => 0
* needs_better_patch: => 0
* needs_docs: => 0
* type: Uncategorized => Bug
Comment:
I don't think this is a bug. As
[https://docs.djangoproject.com/en/stable/ref/forms/fields/#booleanfield
the docs] say,
Since all `Field` subclasses have `required=True` by default, the
validation condition here is important. If you want to include a boolean
in your form that can be either `True` or `False` (e.g. a checked or
unchecked checkbox), you must remember to pass in `required=False` when
creating the `BooleanField`.
Maybe you want to use `TypedChoiceField` instead.
--
Ticket URL: <https://code.djangoproject.com/ticket/27353#comment:1>