【发布时间】:2017-02-18 20:47:20
【问题描述】:
我想在我的模型中为模板和验证设置一个选项。
但是,在该模型的 model.form 中,我只想有一个整数字段。
如何更改小部件以获得 InputField?
我尝试将小部件更改为 forms.Model,但这似乎不起作用。我收到一个错误:
'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
}
模型.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)
谢谢!
【问题讨论】:
-
您可以改用“ChoiceField”。
标签: python django django-forms django-crispy-forms