Je voudrais avoir un ensemble de choix dans mon modèle pour le modèle et la validation.Django - ensemble de choix, mais pas de liste déroulante
Cependant, dans le model.form pour ce modèle je veux juste avoir un champ entier.
Comment puis-je changer le widget pour obtenir un InputField?
J'ai essayé de changer le widget à forms.Model, mais cela n'a pas semblé fonctionner. Je reçois une erreur:
'IntegerField' object has no attribute 'attrs'
forms.py:
class KombiPublikationForm(forms.ModelForm):
class Meta:
model = KombiPublikation
#fields = []
exclude = ['pub_sprache']
widgets = {
'monat': forms.IntegerField(), # does not work
}
model.py:
MONTH = (
(1, 'Januar'),
(2, 'Februar'),
(3, 'März'),
(4, 'April'),
(5, 'Mai'),
(6, 'Juni'),
(7, 'Juli'),
(8, 'August'),
(9, 'September'),
(10, 'Oktober'),
(11, 'November'),
(12, 'Dezember'),
)
class KombiPublikation(models.Model):
[...]
monat = models.IntegerField(choices=MONTH)
Merci!
vous pouvez utiliser "ChoiceField" à la place. –