代码之家  ›  专栏  ›  技术社区  ›  whitebear

使用MultipleChoiceField上课

  •  0
  • whitebear  · 技术社区  · 4 年前

    我想使用multipleChoiceField,从模型中进行选择

    我有模型, Template 所以,我用forms.py做了这个

    class WorkerForm(forms.ModelForm):
        templates = forms.MultipleChoiceField(
            Template.objects.all(), required=False,  label='template')
    

    但是它显示错误

        templates = forms.MultipleChoiceField(
    TypeError: __init__() takes 1 positional argument but 2 were given
    

    我在这儿查文件。

    https://docs.djangoproject.com/en/4.0/ref/forms/fields/

    然而,只有这一点,没有提到使用类实例。

    enter image description here

    0 回复  |  直到 4 年前
        1
  •  2
  •   willeM_ Van Onsem    4 年前

    您应该使用 ModelMultipleChoiceField [Django-doc] ,并且可能与 命名的 参数:

    class WorkerForm(forms.ModelForm):
        templates = forms.ModelMultipleChoiceField(
            queryset=Template.objects.all(), required=False,  label='template'
        )
    推荐文章