Django - ModelChoiceField - TypeError - __init __()至少需要2个参数(给定1个)

Gre*_*reg 1 python django django-forms

我在使用Django 1.2.我正在尝试在表单中使用ModelChoiceField.为什么这些失败并出现上述错误消息?我很茫然:-(

class QueueForm(forms.Form):
    queue = forms.ModelChoiceField(query_set=Order.objects.all())
Run Code Online (Sandbox Code Playgroud)

我也试过这个:

class QueueForm(forms.Form):
    queue = forms.ModelChoiceField(query_set=Order.objects.all(),required=False)
Run Code Online (Sandbox Code Playgroud)

得到了:

__init__() takes at least 2 arguments (2 given)
Run Code Online (Sandbox Code Playgroud)

似乎这是在queue = ..行上发生这种情况.在我使用表格之前.

che*_*ker 7

您在构造函数中设置了错误的变量名称,它需要是queryset而不是query_set.试试这个:

class QueueForm(forms.Form):
queue = forms.ModelChoiceField(queryset=Order.objects.all())
Run Code Online (Sandbox Code Playgroud)

  • 哇!我知道它必须是那样明显的东西:-(我感到愚蠢. (2认同)