用于外键引用的模型的Django表单

时间:2016-01-15 03:35:23

标签: python django django-models

我正在django中创建一个测验应用程序。截至目前,我有两个模型,问答。

class Question(models.Model):
    question_text = models.CharField(max_length=255)
    video_ref = models.ForeignKey('Video')

class Answer(models.Model):
    question_ref = models.ForeignKey('Question') 
    answer_text = models.CharField(max_length=255)
    correct = models.BooleanField()

这种设置允许我对每个问题都有可变数量的潜在答案,并且可能有多个正确的答案。

我想为一个问题创建一个表单模型,以便指向该问题的每个答案都是表单的一部分。怎么办呢?

1 个答案:

答案 0 :(得分:2)

您可以执行以下操作:

<强> forms.py

class QuestionForm(forms.ModelForm):
    answers = forms.ModelMultipleChoiceField(queryset=Question.answer_set.all(), widget=forms.CheckboxSelectMultiple)

    class Meta:
        model = Question

使用forms.ModelMultipleChoiceField和小工具forms.CheckboxSelectMultiple django将为您呈现带有复选框的表单。