f4n*_*4nt 4 python forms django
好吧,我对Django Forms感到茫然,因为文档似乎并没有完全涵盖我正在寻找的东西.一旦你超越了最基本的形式,至少它似乎会嘎然而止.作为答案,我非常愿意链接到良好的文档,或链接到涵盖此主题的好书.基本上,这是它如何分解,我有3个模型(测验,问题,答案).我有20个问题,每个测验有4个可能的答案(多项选择).数字可以变化,但你明白了.
我需要为这些项目创建一个表单,就像你在多项选择测验中所期望的那样.但是,当我在模板中手动创建表单时,而不是使用django.forms,我得到以下内容:
int()的基数为10的无效文字:'test'
所以我试图弄乱django.forms,但我想我只是没有理解如何用这些来构建一个合适的形式.非常感谢任何帮助,谢谢.
这里的模型值得一提:
class Quiz(models.Model):
label = models.CharField(blank=True, max_length=400)
slug = models.SlugField()
def __unicode__(self):
return self.label
class Question(models.Model):
label = models.CharField(blank=True, max_length=400)
quiz = models.ForeignKey(Quiz)
def __unicode__(self):
return self.label
class Answer(models.Model):
label = models.CharField(blank=True, max_length=400)
question = models.ForeignKey(Question)
correct = models.BooleanField()
def __unicode__(self):
return self.label
Run Code Online (Sandbox Code Playgroud)
是的,我必须同意文档和示例在这里真的缺乏.对于您正在描述的案例而言,这不是开箱即用的解决方案,因为它有三层深度:测验 - >问题 - >答案.
Django具有模型内联表单集,可以解决两层深层问题.要生成所需的表单,您需要做的是: