我正在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()
这种设置允许我对每个问题都有可变数量的潜在答案,并且可能有多个正确的答案。
我想为一个问题创建一个表单模型,以便指向该问题的每个答案都是表单的一部分。怎么办呢?
答案 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将为您呈现带有复选框的表单。