models.py :
class Settings(models.Model):
receive_newsletter = models.BooleanField()
# ...
form.py :
class SettingsForm(forms.ModelForm):
receive_newsletter = forms.BooleanField()
class Meta:
model = Settings
Et si vous souhaitez définir automatiquement receive_newsletter
à True
selon certains critères de votre candidature, vous en comptez dans les formulaires __init__
:
class SettingsForm(forms.ModelForm):
receive_newsletter = forms.BooleanField()
def __init__(self):
if check_something():
self.fields['receive_newsletter'].initial = True
class Meta:
model = Settings
Le champ de formulaire booléen utilise un widget CheckboxInput
par défaut .