【发布时间】:2018-06-01 18:21:46
【问题描述】:
class PaymentSelectForm(forms.Form):
date_from = forms.DateField()
date_to = forms.DateField()
website = ModelChoiceField()
paymentmethod = forms.ChoiceField(choices=PAYCODE_CHOICES)
def __init__(self, *args, **kwargs):
super(PaymentSelectForm, self).__init__(*args, **kwargs)
applyClassConfig2FormControl(self)
self.fields['website'].queryset=Website.objects.all()
我有错误:TypeError:__init__() 缺少 1 个必需的位置参数:'queryset'。如何在__init__ 表单中使用Queryset?
【问题讨论】:
-
我不明白你为什么要在
__init__中这样做,而不是在字段本身的构造中? -
这是 django-admin 表单吗?还是简单的?
-
使用 forms.ModelForm 而不是 forms.Form。
-
@AnupYadav: 但是错误是由
ModelChoiceField构造引起的,所以无论我们使用什么类型的Form,它都会总是错误,因为我们从不构造PaymentSelectForm班级。