我定义了以下模型:
class Test(models.Model):
name = models.CharField(max_length=50)
description = models.CharField(max_length=200)
class Page(models.Model):
test = models.ForeignKey(Test, related_name='pages')
class Question(models.Model):
name = models.CharField(max_length=100)
page = models.ForeignKey(Page, related_name='questions')
class Answer(models.Model):
name = models.CharField(max_length=100)
score = models.IntegerField()
question = models.ForeignKey(Question, related_name='answers')
我需要使用ModelForm
创建一个表单,该表单应该为指定测试的每个页面显示一个问题列表及其答案,呈现为单选按钮。
我该如何处理?在我看来,我在测试中拥有当前页面的test_id
和page_id
。我应该制作TestForm
,PageForm
甚至是AnswerForm
吗?在最Django-ish模式下,我需要的方法是什么?