如何使用模型查询集创建多选表单?

时间:2016-12-19 15:12:08

标签: python django django-forms

此应用程序的目标是让用户使用复选框选择他们喜欢的字体,并在其他地方使用所选字体。

问题是,所有字体都是由管理员通过管理面板输入的,因此表单应该可以从那里获取。

这就是我的想法:

forms.py

class ContactForm1(forms.ModelForm):
    choice = forms.MultipleChoiceField(choices=""" Get my models title as choice """, widget=forms.CheckboxSelectMultiple())

    class Meta:
        model = ImageCheckView
        fields = ['title', 'choice']
...

models.py

class ImageCheckView(models.Model):
    title = models.CharField(max_length=100, unique=True)
    ...

它看起来像什么:

enter image description here

(我希望保留所选的选项,以便我可以在其他地方使用它。)

如何实现以下目标?

1 个答案:

答案 0 :(得分:0)

找到一个解决方案,我可以在我的表单上创建一个新的复选框字段,并传递像这样的对象选项:

checkbox = forms.MultipleChoiceField(ImageCheckView.objects.all(), widget=forms.CheckboxSelectMultiple)